login  Naam:   Wachtwoord: 
Registreer je!
 Forum

update bestand url in database lukt niet

Offline netmarker - 03/05/2006 17:11 (laatste wijziging 03/05/2006 17:15)
Avatar van netmarkerNieuw lid 1
Mijn ub-date script plaatst de var foto iet in mijn database. kan iemand mij vertellen wat er fout gaat?

2
de bedoeling is dat er met dit script de data in de database gewijzicht kan worden (het forum gedeelte heb ik niet gepost) Als de data niet veranderd hoeft moet hij de oude data laten staan. Alleen met het updaten van een bestand wil het dus niet erg lukken. Moet ik misschien een andere methode gebruiken?
  1. <?php
  2. clude("..//includes/connect.php");
  3. include("..//includes/var.php");
  4.  
  5. //functie voor de escape bij $msg_tekst
  6. function escape( $strVar, $resDbConnection = null )
  7. {
  8. if ( get_magic_quotes_gpc() == 0 )
  9. {
  10. // don't escape integers
  11. if ( !ctype_digit( $strVar ) )
  12. $strVar = mysql_real_escape_string( $strVar, $resDbConnection );
  13. }
  14. return $strVar;
  15. }
  16.  
  17. @extract($_POST);
  18.  
  19. //verzenden naar db
  20.  
  21. if(!empty($_POST))
  22. {
  23. $query = "UPDATE messages SET
  24. msg_title = '". $_POST['msg_title']. "',
  25. msg_type = '". $_POST['msg_type']. "',
  26. msg_text = '". escape($msg_text). "',
  27. foto = '".$foto."'
  28. WHERE msg_id = '". $_POST['msg_id']."'";
  29.  
  30. $result = mysql_query($query) or die(mysql_error());
  31. header("location: messages.php");
  32. $result = mysql_query($query) or die(mysql_error());
  33. }
  34.  
  35. //ophalen uit db
  36.  
  37. $query = "SELECT
  38. msg_title,
  39. msg_text,
  40. msg_type,
  41. foto
  42. FROM messages
  43. WHERE msg_id = ". $_GET['msg_id'].";";
  44.  
  45. $result = mysql_query($query) or die(mysql_error());
  46. $msg_title = mysql_result($result,0,"msg_title");
  47. $msg_text = mysql_result($result,0,"msg_text");
  48. $msg_type = mysql_result($result,0,"msg_type");
  49. $foto = mysql_result($result,0,"foto");
  50.  
  51. //bestand selectie
  52.  
  53.  
  54. if ( $foto != '' )
  55.  
  56. {
  57. $naam = $foto;
  58. echo $foto;
  59. echo $naam;
  60.  
  61. }
  62.  
  63.  
  64. else
  65. {
  66.  
  67.  
  68. if(isset($_FILES['bestand']))
  69. {
  70. if($_FILES['bestand']['size'] > 32400)
  71. {
  72. echo "Het bestand is <b>" . $_FILES['bestand']['size'] . "</b>, het maximale toegstaan is <b>102400</b>";
  73. }
  74. else
  75. {
  76. if($_FILES['bestand']['type'] == "image/gif"
  77. || $_FILES['bestand']['type'] == "image/png"
  78. || $_FILES['bestand']['type'] == "image/pjpeg"
  79. || $_FILES['bestand']['type'] == "image/jpeg")
  80. {
  81. if(empty($_POST['naam']))
  82. {
  83. $naam = $_FILES['bestand']['name'];
  84. }
  85. move_uploaded_file($_FILES['bestand']['tmp_name'], "Image/" . $naam);
  86. }
  87. else
  88. {
  89. echo "Het bestand is geen png, jpg of gif";
  90. }
  91. }
  92. }
  93. else
  94. {
  95. echo "Selecteer een plaatje";
  96. }
  97. }
  98. ?>


vinTage edit: [ code ] tags aub

3 antwoorden

Gesponsorde links
Offline haytjes - 03/05/2006 17:29
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
een keer de situatie schetsen:

  1. <?
  2. //php include iets, aub;
  3.  
  4. //Als er een $_POST is doe het volgende:
  5. // update alles naar de database, waaronder $foto;
  6. // daarna als $foto bestaat:
  7. // $naam = $foto;
  8. // anders
  9. // zo verkrijg je $foto
  10. ?>


zou je niet een keer zorgen, dat hij op voorhand weet wat $foto is. Zodat php niet moet gokken:p
Offline netmarker - 03/05/2006 17:44 (laatste wijziging 04/05/2006 16:06)
Avatar van netmarker Nieuw lid oke maar dan vuld hij bij stap 3 toch een leeg veld in als er geen bestand geselecteerd is? of moet ik eerst de var. tijdelijk oplaan?

ik heb overgens
foto = '".$foto."'

veranderd in

foto = '".$naam."'

omdat hij ook geen nieuw bestand kan uploaden. Maar dat werkt nu ook nog niet. Doe ik iets fout met de variabelen dan? Ben er echt al heel lang mee bezig maar kom er niet uit!!

ik heb ook het boovenstaande geprobeerd. maar hij plaatst geen content in de database.

  1. <?
  2. if(!empty($_POST))
  3. {
  4. $query = "UPDATE messages SET
  5. msg_title = '". $_POST['msg_title']. "',
  6. msg_type = '". $_POST['msg_type']. "',
  7. msg_text = '". escape($msg_text). "',
  8. foto = '".$naam."'
  9. WHERE msg_id = '". $_POST['msg_id']."'";
  10.  
  11. $result = mysql_query($query) or die(mysql_error());
  12. header("location: messages.php");
  13. $result = mysql_query($query) or die(mysql_error());
  14. }
  15.  
  16. //ophalen uit db
  17.  
  18. $query = "SELECT
  19. msg_title,
  20. msg_text,
  21. msg_type,
  22. foto
  23. FROM messages
  24. WHERE msg_id = ". $_GET['msg_id'].";";
  25.  
  26. $result = mysql_query($query) or die(mysql_error());
  27. $msg_title = mysql_result($result,0,"msg_title");
  28. $msg_text = mysql_result($result,0,"msg_text");
  29. $msg_type = mysql_result($result,0,"msg_type");
  30. $foto = mysql_result($result,0,"foto");
  31.  
  32. //bestand selectie
  33.  
  34.  
  35.  
  36.  
  37.  
  38. {
  39.  
  40.  
  41. if(isset($_FILES['bestand']))
  42. {
  43. if($_FILES['bestand']['size'] > 32400)
  44. {
  45. echo "Het bestand is <b>" . $_FILES['bestand']['size'] . "</b>, het maximale toegstaan is <b>102400</b>";
  46. }
  47. else
  48. {
  49. if($_FILES['bestand']['type'] == "image/gif"
  50. || $_FILES['bestand']['type'] == "image/png"
  51. || $_FILES['bestand']['type'] == "image/pjpeg"
  52. || $_FILES['bestand']['type'] == "image/jpeg")
  53. {
  54. if(empty($_POST['naam']))
  55. {
  56. $naam = $_FILES['bestand']['name'];
  57. }
  58. move_uploaded_file($_FILES['bestand']['tmp_name'], "Image/" . $naam);
  59. }
  60. else
  61. {
  62. echo "Het bestand is geen png, jpg of gif";
  63. }
  64. }
  65. }
  66. else
  67. {
  68. echo "Selecteer een plaatje";
  69. }
  70.  
  71. if ( $foto != '0' )
  72.  
  73. {
  74. $naam = $foto;
  75. echo $foto;
  76. echo $naam;
  77.  
  78. }
  79.  
  80. }
  81. ?>

Citaat:
Proximus edit:
Graag gebruik maken van code tags. Grotere posts gelieve te pasten op www.plaatscode.be.
Offline Ibrahim - 05/05/2006 08:31
Avatar van Ibrahim PHP expert paar opmerkingen:

1.
if(!empty($_POST))

kun je 2 dingen beter gebruiken:

- if(!isset($_POST['submitbuttonnaam']))
- if($_SERVER['REQUEST_METHOD'] != "POSt"))
----------------------------------------------
2.
  1. <?php $result = mysql_query($query) or die(mysql_error());
  2. header("location: messages.php");
  3. $result = mysql_query($query) or die(mysql_error()); ?>


waarom doe je dit 
zodra php bij die header(...) is gaat hij naar messages.php en waarom 2x dezelfde query uitvoeren ?
-----------------------------------------------
3.
  1. $query = "SELECT
  2. msg_title,
  3. msg_text,
  4. msg_type,
  5. foto
  6. FROM messages
  7. WHERE msg_id = ". $_GET['msg_id'].";";
  8.  
  9. $result = mysql_query($query) or die(mysql_error());
  10. $msg_title = mysql_result($result,0,"msg_title");
  11. $msg_text = mysql_result($result,0,"msg_text");
  12. $msg_type = mysql_result($result,0,"msg_type");
  13. $foto = mysql_result($result,0,"foto");


dit kun je beter boven de if zetten
-----------------------------------------------
4.
clude("..//includes/connect.php"); moet :
include("...") zijn
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.223s