login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Http_post_vars werkt niet...?

Offline Lazlo - 27/04/2006 15:57
Avatar van LazloHTML beginner Het bewerk gedeelte van de volgende code blijkt niet te werken... Hij stuurt de variabelen niet mee.

Hoe kan ik dit oplossen, ligt het aan de http_post_vars? zo ja wat kan ik dan als alternatief gebruiken.
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <title> | Foreign-X Admin| </title>
  6. <meta http-equiv="Content-Type"
  7. content="text/html; charset=utf-8" />
  8. <link rel="stylesheet" type="text/css" href="../css/style.css" />
  9. </head>
  10. <body>
  11. <?
  12. require("../includes/global.inc.php");
  13.  
  14. echo "<script type=\"text/javascript\">\n";
  15.  
  16. echo "function askConfirm(txt,url) {\n";
  17. echo "if (confirm(txt) == true) {\n";
  18. echo "document.location=url\n";
  19. echo "return true;\n";
  20. echo "} \n";
  21. echo "}\n";
  22.  
  23. echo "</script>";
  24.  
  25. //-- navigatie
  26. echo "<p><a href=\"$PHP_SELF?action=add\">bericht toevoegen</a> | <a href=\"nieuws.php\">overzicht berichten</a></p>";
  27.  
  28. //-- toevoegen
  29. if ($_GET['action'] == 'add')
  30. {
  31. if( $_SERVER['REQUEST_METHOD'] == 'POST' )
  32. {
  33. if( empty( $_POST['titel'] ) OR empty( $_POST['naam'] ) OR empty( $_POST['bericht'] ) OR empty( $_POST['datum'] ) OR empty( $_POST['tijd'] ) )
  34. {
  35. echo 'Je moet alle velden invullen! <a href="javascript:history.back(-1)">Ga terug!</a>';
  36. }
  37. else
  38. {
  39. $query = mysql_query( "
  40. INSERT INTO
  41. nieuws(titel , naam , bericht , datum , tijd )
  42. VALUES('" . $_POST['titel'] . "' , '" . $_POST['naam'] . "' , '" . $_POST['bericht'] . "' , '" . $_POST['datum'] . "' , '" . $_POST['tijd'] . "')
  43. " )
  44. or die( mysql_error() );
  45. echo 'Je bericht is succevol toegevoegd aan de site!';
  46. }
  47. }
  48. else
  49. {
  50. echo '
  51. <b>Plaats een nieuw bericht!</b>
  52. <br />
  53. <br />
  54. <form method="post" action="">
  55. <input type="hidden" readonly="readonly" name="datum" maxlength="10" size="10" value="' . date("d-m-Y") . '" />
  56. <input type="hidden" readonly="readonly" name="tijd" maxlength="10" size="10" value="' . date("H:i:s") . '" />
  57. Naam: <input type="text" name="naam" maxlength="10" size="10" /> <br />
  58. Titel: <input type="text" name="titel" maxlength="50" size="10" /> <br />
  59. Bericht: <textarea name="bericht" rows="25" cols="60"></textarea> <br /> <br />
  60. <input type="submit" name="submit" value="Toevoegen!" />
  61. </form>
  62. ';
  63. }
  64. }
  65.  
  66. //-- verwijderen
  67. elseif ($HTTP_GET_VARS["action"] == "del")
  68. {
  69. if (is_numeric($HTTP_GET_VARS["id"]))
  70. {
  71. $sql = "DELETE FROM nieuws WHERE id = $HTTP_GET_VARS[id]";
  72. $res = mysql_query($sql);
  73.  
  74. if ($res)
  75. {
  76. echo "Bericht verwijderd.";
  77. }
  78. else
  79. {
  80. echo "Bericht is niet verwijderd.";
  81. }
  82. }
  83. else
  84. {
  85. echo "Geen geldig id.";
  86. }
  87. }
  88.  
  89. //-- bewerken
  90. elseif ($HTTP_GET_VARS["action"] == "edit" || $HTTP_POST_VARS[action] == "edit")
  91. {
  92. if ($HTTP_POST_VARS["titel"] && $HTTP_POST_VARS["bericht"])
  93. {
  94. $sql = "UPDATE nieuws SET titel = '$HTTP_POST_VARS[titel]', bericht = '$HTTP_POST_VARS[bericht]' WHERE id = '$HTTP_POST_VARS[id]'";
  95. $res = mysql_query($sql);
  96.  
  97. if ($res)
  98. {
  99. echo "Het nieuwsbericht is succesvol bijgewerkt.";
  100. }
  101.  
  102. else
  103. {
  104. echo "Het nieuwsbericht is niet bijgewerkt.";
  105. }
  106. }
  107.  
  108. else
  109. {
  110. $sql = "SELECT id,titel,datum,tijd,bericht FROM nieuws WHERE id = $HTTP_GET_VARS[id]";
  111. $res = mysql_query($sql);
  112.  
  113. if ($res)
  114. {
  115. $row = mysql_fetch_array($res);
  116. echo "<p>Bewerk een bericht</p>";
  117. echo "<form method=\"post\" action=\"nieuws.php\">";
  118. echo "<input type=\"hidden\" name=\"show\" value=\"edit\">";
  119. echo "<input type=\"hidden\" name=\"id\" value=\"$row[id]\">";
  120. echo "<input type=\"hidden\" readonly=\"readonly\" size=\"10\" maxlength=\"10\" value=\"$row[datum]\" name=\"datum\">";
  121. echo "<input type=\"hidden\" readonly=\"readonly\" size=\"10\" maxlength=\"10\" value=\"$row[tijd]\" name=\"tijd\">";
  122. echo "Titel: <input type=\"text\" size=\"30\" name=\"titel\" value=\"$row[titel]\"><br>";
  123. echo "Bericht:<br>";
  124. echo "<textarea name=\"bericht\" rows=\"25\" cols=\"60\">$row[bericht]</textarea><br>";
  125. echo "<input type=\"submit\" name=\"submit\" value=\"Bewerken\">";
  126. echo "</form>";
  127. }
  128. else
  129. {
  130. echo "Geen geldig id.";
  131. }
  132. }
  133. }
  134.  
  135. //-- overzicht
  136. else
  137. {
  138. $sql = "SELECT id,titel FROM nieuws ORDER BY id DESC,datum DESC";
  139. $res = mysql_query($sql);
  140.  
  141. echo "<table border=\"1\" cellspacing=\"0\" cellpadding=\"5\">";
  142. echo "<tr><td width=\"300\"><b>Titel</b></td><td><b>Bewerken</b></td><td><b>Wissen</b></td></tr>";
  143. while ($row = mysql_fetch_array($res))
  144. {
  145. echo "<tr><td>$row[titel]</td><td><center><a href=\"nieuws.php?action=edit&amp;id=$row[id]\"><img src=\"images/edit.gif\" width=\"18\" height=\"16\" border=\"0\" /></a></center></td><td><center><a href=\"javascript:askConfirm('Wilt%20u%20$row[titel]%20verwijderen?','nieuws.php?action=del&amp;id=$row[id]');\"><img src=\"images/delete.gif\" width=\"16\" height=\"16\" border=\"0\" /></a></center></td></tr>";
  146. }
  147. echo "</table>";
  148. }
  149.  
  150. ?>
  151. </body>
  152. </html>


:?:

6 antwoorden

Gesponsorde links
Offline nemesiskoen - 27/04/2006 15:59
Avatar van nemesiskoen Gouden medaille

PHP expert
Verander overal http_post_vars in $_POST en http_get_vars in $_GET

Bv.

  1. elseif ($_GET["action"] == "del")
  2. ==
  3. elseif ($_GET["action"] == "del")
Offline timo - 27/04/2006 15:59 (laatste wijziging 27/04/2006 16:11)
Avatar van timo PHP ver gevorderde a) Variabelen buiten quotes
b) HTTP_POST_VARS = heeeeel oud..

wacht even, dan script ik wel ff netjes voor je...

EDIT:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <title> | Foreign-X Admin| </title>
  6. <meta http-equiv="Content-Type"
  7. content="text/html; charset=utf-8" />
  8. <link rel="stylesheet" type="text/css" href="../css/style.css" />
  9. <script type=\"text/javascript\">
  10. function askConfirm(txt,url) {
  11. if (confirm(txt) == true)
  12. document.location=url;
  13. return true;
  14. }
  15. }
  16.  
  17. </script>
  18. </head>
  19. <body>
  20. <?
  21. require("../includes/global.inc.php");
  22. //-- navigatie
  23. echo '<p><a href="'.$PHP_SELF.'?action=add">bericht toevoegen</a> | <a href="nieuws.php">overzicht berichten</a></p>';
  24.  
  25. //-- toevoegen
  26. if ($_GET['action'] == 'add')
  27. {
  28. if( $_SERVER['REQUEST_METHOD'] == 'POST' )
  29. {
  30. if( empty( $_POST['titel'] ) OR empty( $_POST['naam'] ) OR empty( $_POST['bericht'] ) OR empty( $_POST['datum'] ) OR empty( $_POST['tijd'] ) )
  31. {
  32. echo 'Je moet alle velden invullen! <a href="javascript:history.back(-1)">Ga terug!</a>';
  33. }
  34. else
  35. {
  36. $query = mysql_query( "
  37. INSERT INTO
  38. nieuws(titel , naam , bericht , datum , tijd )
  39. VALUES('" . $_POST['titel'] . "' , '" . $_POST['naam'] . "' , '" . $_POST['bericht'] . "' , '" . $_POST['datum'] . "' , '" . $_POST['tijd'] . "')
  40. " )
  41. or die( mysql_error() );
  42. echo 'Je bericht is succevol toegevoegd aan de site!';
  43. }
  44. }
  45. else
  46. {
  47. echo '
  48. <b>Plaats een nieuw bericht!</b>
  49. <br />
  50. <br />
  51. <form method="post" action="">
  52. <input type="hidden" readonly="readonly" name="datum" maxlength="10" size="10" value="' . date("d-m-Y") . '" />
  53. <input type="hidden" readonly="readonly" name="tijd" maxlength="10" size="10" value="' . date("H:i:s") . '" />
  54. Naam: <input type="text" name="naam" maxlength="10" size="10" /> <br />
  55. Titel: <input type="text" name="titel" maxlength="50" size="10" /> <br />
  56. Bericht: <textarea name="bericht" rows="25" cols="60"></textarea> <br /> <br />
  57. <input type="submit" name="submit" value="Toevoegen!" />
  58. </form>
  59. ';
  60. }
  61. }
  62.  
  63. //-- verwijderen
  64. elseif ($_GET["action"] == "del")
  65. {
  66. if (is_numeric($_GET["id"]))
  67. {
  68. $sql = "DELETE FROM nieuws WHERE id = ".addslashes($_GET['id']);
  69. $res = mysql_query($sql);
  70.  
  71. if ($res)
  72. {
  73. echo "Bericht verwijderd.";
  74. }
  75. else
  76. {
  77. echo "Bericht is niet verwijderd.";
  78. }
  79. }
  80. else
  81. {
  82. echo "Geen geldig id.";
  83. }
  84. }
  85.  
  86. //-- bewerken
  87. elseif ($_GET["action"] == "edit" || $_POST[action] == "edit")
  88. {
  89. if ($_POST["titel"] && $_POST["bericht"])
  90. {
  91. $sql = "UPDATE nieuws SET titel = '".$_POST['titel']."', bericht = '".$_POST['bericht']."' WHERE id = '".$_POST['id']."'";
  92. $res = mysql_query($sql);
  93.  
  94. if ($res)
  95. {
  96. echo "Het nieuwsbericht is succesvol bijgewerkt.";
  97. }
  98.  
  99. else
  100. {
  101. echo "Het nieuwsbericht is niet bijgewerkt.";
  102. }
  103. }
  104.  
  105. else
  106. {
  107. $sql = "SELECT id,titel,datum,tijd,bericht FROM nieuws WHERE id = ".$_GET['id'];
  108. $res = mysql_query($sql);
  109.  
  110. if ($res)
  111. {
  112. $row = mysql_fetch_array($res);
  113. ?>
  114. <p>Bewerk een bericht</p>
  115. <form method="post" action="nieuws.php">
  116. <input type="hidden" name="show" value="edit">
  117. <input type="hidden" name="id" value="<?=$row['id'];?>">
  118. <input type="hidden" readonly="readonly" size="10" maxlength="10" value="<?=$row['datum'];?>" name="datum">
  119. <input type="hidden" readonly="readonly" size="10" maxlength="10" value="<?=$row['tijd'];?>" name="tijd">
  120. Titel: <input type="text" size="30" name="titel" value="<?=$row['titel'];?>"><br />
  121. Bericht:<br />
  122. <textarea name=\"bericht\" rows=\"25\" cols=\"60\">$row[bericht]</textarea><br>
  123. <input type="submit" name="submit" value="Bewerken">
  124. </form>
  125. <?
  126. }
  127. else
  128. {
  129. echo "Geen geldig id.";
  130. }
  131. }
  132. }
  133.  
  134. //-- overzicht
  135. else
  136. {
  137. $sql = "SELECT id,titel FROM nieuws ORDER BY id DESC,datum DESC";
  138. $res = mysql_query($sql);
  139.  
  140. echo '<table border="1" cellspacing="0" cellpadding="5">';
  141. echo '<tr><td width="300"><b>Titel</b></td><td><b>Bewerken</b></td><td><b>Wissen</b></td></tr>';
  142. while ($row = mysql_fetch_array($res))
  143. {
  144. echo '<tr><td>'.$row['titel'].'</td><td><center>
  145. <a href="nieuws.php?action=edit&amp;id='.$row['id'].'">
  146. <img src="images/edit.gif" width="18" height="16" border="0" />
  147. </a></center></td><td><center>
  148. <a href="javascript:askConfirm(\'Wilt%20u%20'.$row['titel'].'%20verwijderen?\',\'nieuws.php?action=del&amp;id='.$row['id'].'\');">
  149. <img src="images/delete.gif" width="16" height="16" border="0" />
  150. </a></center></td></tr>';
  151. }
  152. echo "</table>";
  153. }
  154.  
  155. ?>
  156. </body>
  157. </html>


trwns: vind je het gek dat het niet werkt.. je doet $HTTP_GET_VARS[id], als het niet nummeriek is altijd quotes (bij array het beste single eromheen, ook proberen html buiten PHP te houden of tenminste niet alles te gaan escapen want dat kost xtra parse tijd, kan je beter single quotes gebruiken als je het dan toch zo graag wilt...
Offline Lazlo - 27/04/2006 16:24
Avatar van Lazlo HTML beginner Dat aangepaste script werkt ook niet, hij redirect gewoon weer naar het bestand en geeft geen bericht of het goed is gegaan of niet...
Offline GTW - 27/04/2006 16:27 (laatste wijziging 27/04/2006 16:28)
Avatar van GTW Gouden medaille

PHP gevorderde
En als je
  1. <?
  2. $res = mysql_query($sql);
  3.  
  4. if ($res)
  5. {
  6. ?>

nou eens vervangd door:
  1. <?
  2. if(mysql_query($sql))
  3. {

Dat werkt bij mij iig altijd
Offline Lazlo - 27/04/2006 16:47 (laatste wijziging 28/04/2006 07:33)
Avatar van Lazlo HTML beginner Mmm , nee ook niet.

Ieamand ideeen?
Offline BramBo - 28/04/2006 09:38
Avatar van BramBo JS gevorderde Wat altijd werkt om te checken welke variabelen je tot je beschikking hebt en welke niet is :
print_r($_POST);
print_r($_GET);
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.236s