login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Berichtenbalk - Toevoegen - Werkt niet

Offline Scoits - 23/10/2004 22:53
Avatar van ScoitsHTML interesse Heej, ik heb een berichtenbalk gemaakt, op basis van een berichtenbalk die hier staat.. alleen werkt het toevoegen niet.. het zal wel een stomme fout zijn maar ik kan hem niet vinden.. kunnen jullie even kijken?

  1. <?php
  2. //Invoegen config.php
  3. include("config.php");
  4.  
  5. //Als er op de knop Post bericht is gedrukt..
  6. if($_POST['submit']){
  7.  
  8. $tijd = time();
  9. // Is er een juiste naam ingevuld?
  10. if(strlen(naam)<2){
  11. // Geen juiste naam ingevuld
  12. $error_msg="Geen(geldige) naam ingevoerd. Er geld een minimum lengte van 2 tekens.";
  13. }
  14. if(strlen(bericht)<8){
  15. // Te korte/Geen juiste inhoud ingevuld
  16. if($error_msg){
  17. $error_msg.="<br>Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  18. }else{
  19. $error_msg="Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  20. }
  21. }
  22.  
  23. // Bestaat variabele error_msg?
  24. if($error_msg){
  25.  
  26. // inhoud klopt niet - foutmelding weergeven en velden niet verwerken
  27. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  28. $message.= $error_msg;
  29. $message.= "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  30.  
  31. // Inhoud klopt - Geen foutmelding weergeven en velder verwerken
  32. }else{
  33. //Het invoegen in de database
  34. $berichtenbalk_sql = "INSERT INTO berichtenbalk (naam, bericht, tijd, ip) VALUES ('$naam','$bericht','$tijd','$ip')";
  35. mysql_query($berichtenbalk_sql);
  36. echo "Je bericht is toegevoegd! klik <a href=\"berichtenbalk.php\">hier</a> om naar de berichtenbalk te gaan";
  37. }
  38. //Er is niet op Post bericht gedrukt
  39. }else{
  40. ?><title>Toevoegen bericht</title>
  41. <form action="toevoegen.php" method="post" name="berichtenbalk">
  42. <table width="90%" border="0" cellpadding="2" cellspacing="2">
  43. <tr bgcolor="#F9F9F9">
  44. <td colspan="3" height="25">Plaats een bericht </td>
  45. </tr>
  46. <tr bgcolor="#F9F9F9">
  47. <td width="263">Naam
  48. <input name="naam" type="text" maxlength="50"></td>
  49. <td width="334">Bericht
  50. <input name="bericht" type="text" maxlength="50"></td>
  51. <td width="83"><input type="submit" name="submit" value="Post bericht"></td>
  52. </tr>
  53. </table></form>
  54. <?php
  55. }
  56. ?>


thanx...

Martijn

13 antwoorden

Gesponsorde links
Offline Scoits - 23/10/2004 22:55 (laatste wijziging 23/10/2004 22:57)
Avatar van Scoits HTML interesse Ow, btw, het ip is in de config.php opgenomen:

  1. <?php $ip = $_SERVER['REMOTE_ADDR']; ?>


Ook de database connectie is hier in opgenomen:

  1. <?php
  2. $host = "localhost"; // Hostnaam
  3. $naam = "root"; // Database Gebruikersnaam
  4. $pasw = ""; // Database Paswoord
  5. $data = "sitemasters";
  6.  
  7. $con = mysql_connect($host, $naam, $pasw) or die ("Verbinding mislukt"); // Connectie Database
  8. mysql_select_db($data, $con); // Selecteren Database
  9. ?>
Offline ZenoxParadox - 24/10/2004 00:43 (laatste wijziging 24/10/2004 00:55)
Avatar van ZenoxParadox Nieuw lid edit : kehb de post niet goed gelezen, back in five

Offline Scoits - 24/10/2004 00:46 (laatste wijziging 24/10/2004 00:50)
Avatar van Scoits HTML interesse Toevoegen.php is de bovenste..

$_post var die informatie kan ophalen --> kan het zijn.. zal ff controleren maar denk ut niet
mysql connectie --> in de config.php
sql string met informatie --> staat er..
query die het laat uitvoeren --> staat er ook
header redirect --> Er is een message die zegt dat het toegevoegd is

edit: Nope, helpt niet..
Offline ZenoxParadox - 24/10/2004 01:06
Avatar van ZenoxParadox Nieuw lid tis toch je post probleem, ik ben zelf nieuw met het programmeren van php en Mysql, en ik zie dat je niets ophaalt uit de methode post, hoort dat zo te zijn of kan je het ook afkorten ?
Offline Scoits - 24/10/2004 01:07
Avatar van Scoits HTML interesse Ik heb het inmiddels veranderd, maar hielp niet:

Bij $tijd en $ip niet nodig omdat dit niet uit de post array komt.. 

  1. <?php
  2. // Invoegen config.php
  3. include("config.php");
  4.  
  5. // Als er op de knop Post bericht is gedrukt..
  6. if($_POST['submit']){
  7.  
  8. // De tijd..
  9. $tijd = time();
  10. // Naam van Superglobale array naar variabele
  11. $naam = $_POST['naam'];
  12. // Bericht van Superglobale array naar variabele
  13. $bericht = $_POST['bericht'];
  14.  
  15. // Is er een juiste naam ingevuld?
  16. if(strlen(naam)<2){
  17. // Geen juiste naam ingevuld
  18. $error_msg="Geen(geldige) naam ingevoerd. Er geld een minimum lengte van 2 tekens.";
  19. }
  20. if(strlen(bericht)<8){
  21. // Te korte/Geen juiste inhoud ingevuld
  22. if($error_msg){
  23. $error_msg.="<br>Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  24. }else{
  25. $error_msg="Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  26. }
  27. }
  28.  
  29. // Bestaat variabele error_msg?
  30. if($error_msg){
  31.  
  32. // inhoud klopt niet - foutmelding weergeven en velden niet verwerken
  33. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  34. $message.= $error_msg;
  35. $message.= "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  36.  
  37. // Inhoud klopt - Geen foutmelding weergeven en velder verwerken
  38. }else{
  39. //Het invoegen in de database
  40. $berichtenbalk_sql = "INSERT INTO berichtenbalk (naam, bericht, tijd, ip) VALUES ('$naam','$bericht','$tijd','$ip')";
  41. mysql_query($berichtenbalk_sql);
  42. echo "Je bericht is toegevoegd! klik <a href=\"berichtenbalk.php\">hier</a> om naar de berichtenbalk te gaan";
  43. }
  44. //Er is niet op Post bericht gedrukt
  45. }else{
  46. ?><title>Toevoegen bericht</title>
  47. <form action="toevoegen.php" method="post" name="berichtenbalk">
  48. <table width="90%" border="0" cellpadding="2" cellspacing="2">
  49. <tr bgcolor="#F9F9F9">
  50. <td colspan="3" height="25">Plaats een bericht </td>
  51. </tr>
  52. <tr bgcolor="#F9F9F9">
  53. <td width="263">Naam
  54. <input name="naam" type="text" maxlength="50"></td>
  55. <td width="334">Bericht
  56. <input name="bericht" type="text" maxlength="50"></td>
  57. <td width="83"><input type="submit" name="submit" value="Post bericht"></td>
  58. </tr>
  59. </table></form>
  60. <?php
  61. }
  62. ?>
Offline ZenoxParadox - 24/10/2004 01:25 (laatste wijziging 24/10/2004 01:28)
Avatar van ZenoxParadox Nieuw lid nee ik was ookal zover, je was twee dingen vergeten, maar hij komt niet voorbij de eerste if ... 

aw man, tis al zow laat ik ga helemaal onzin praten 
Offline Scoits - 24/10/2004 01:31
Avatar van Scoits HTML interesse haha.. maar iid, ik krijg alleen een wit vlak na het submitten, dus hij komt niet voorbij eerste if.. maar snap er niks van! :S
Offline ZenoxParadox - 24/10/2004 01:37 (laatste wijziging 24/10/2004 01:49)
Avatar van ZenoxParadox Nieuw lid dit kan je zien als je boven je eerste error melding dit zet :

  1. echo "twee" ;


en dan niets invoeren natuurlijk, hij zal wel "twee" zeggen maar geen melding.

EDIT :
  1. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  2. echo $message ;
  3. $message = $error_msg;
  4. echo $message ;
  5. $message = "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  6. echo $message ;


Dat zorgt iig voor je foutmelding

der staat op een bepaald moment : als $naam<2 tekens heeft, dan moet de foutmelding over de naam gaan

dan de volgende statement maak je : is het bericht<8 ga dan naar de volgende statement, volgende statement luid : "als er een error message bestaat, maak dan de error message anders" ...

of betekent $error_msg:rechts: . = "<br>Geen(geldige) enz ... dat hij een nieuwe erbij moet maken ?
Offline ZenoxParadox - 24/10/2004 02:19
Avatar van ZenoxParadox Nieuw lid met de volgende code werkt het bij mij.

  1. <?php
  2. //Invoegen config.php
  3. include("config.php");
  4.  
  5. //Als er op de knop Post bericht is gedrukt..
  6. if($_POST['submit'])
  7. {
  8. $tijd = time();
  9. $naam = $_POST['naam'] ;
  10. $bericht = $_POST['bericht'] ;
  11. // Is er een juiste naam ingevuld?
  12. if(strlen($naam)<2)
  13. {
  14. // Geen juiste naam ingevuld
  15. $error_msg = "Geen(geldige) naam ingevoerd. Er geld een minimum lengte van 2 tekens.";
  16. }
  17. if(strlen($bericht)<8)
  18. {
  19. // Te korte/Geen juiste inhoud ingevuld
  20. if($error_msg)
  21. {
  22. $error_msg = "<br>Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  23. }
  24. else
  25. {
  26. $error_msg = "Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  27. }
  28. }
  29.  
  30. // Bestaat variabele error_msg?
  31. if($error_msg)
  32. {
  33.  
  34. // inhoud klopt niet - foutmelding weergeven en velden niet verwerken
  35. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  36. echo $message ;
  37. $message = $error_msg;
  38. echo $message ;
  39. $message = "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  40. echo $message ;
  41.  
  42. // Inhoud klopt - Geen foutmelding weergeven en velder verwerken
  43. }
  44. else
  45. {
  46. //Het invoegen in de database
  47.  
  48. $berichtenbalk_sql = "INSERT INTO `berichtenbalk` (naam, bericht, tijd, ip) VALUES ('$naam','$bericht','$tijd','$ip')";
  49. mysql_query($berichtenbalk_sql) ;
  50. echo "Je bericht is toegevoegd! klik <a href=\"berichtenbalk.php\">hier</a> om naar de berichtenbalk te gaan";
  51. }
  52.  
  53. //Er is niet op Post bericht gedrukt
  54. }
  55. else
  56. {
  57. ?>
  58.  
  59. <title>Toevoegen bericht</title>
  60. <form action="toevoegen.php" method="post" name="berichtenbalk">
  61. <table width="90%" border="0" cellpadding="2" cellspacing="2">
  62. <tr bgcolor="#F9F9F9">
  63. <td colspan="3" height="25">Plaats een bericht </td>
  64. </tr>
  65. <tr bgcolor="#F9F9F9">
  66. <td width="263">Naam
  67. <input name="naam" type="text" maxlength="50"></td>
  68. <td width="334">Bericht
  69. <input name="bericht" type="text" maxlength="50"></td>
  70. <td width="83"><input type="submit" name="submit" value="Post bericht"></td>
  71. </tr>
  72. </table></form>
  73. <?php
  74. }
  75. ?>


:cool:
Offline Scoits - 24/10/2004 11:13
Avatar van Scoits HTML interesse Hehe.. Iig bedankt voor je hulp.. , ik had zelf ondertussen het script ook een beetje herscript:

  1. <?php
  2. //Invoegen config.php
  3. include("config.php");
  4.  
  5. //Als er op de knop Post bericht is gedrukt..
  6. if ($_SERVER['REQUEST_METHOD'] == "POST")
  7. {
  8. $tijd = time();
  9. // Is er een juiste naam ingevuld?
  10. if(strlen($_POST['naam'])<2)
  11. {
  12. // Geen juiste naam ingevuld
  13. $error_msg="Geen(geldige) naam ingevoerd. Er geld een minimum lengte van 2 tekens.";
  14. }
  15.  
  16. if(strlen($_POST['bericht'])<8)
  17. {
  18. // Te korte/Geen juiste inhoud ingevuld
  19. if(strlen($error_msg) > 0)
  20. {
  21. $error_msg .= "<br>Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  22. }
  23. else
  24. {
  25. $error_msg="Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  26. }
  27. }
  28.  
  29. // Bestaat variabele error_msg?
  30. if (strlen(($error_msg) > 0))
  31. {
  32. // inhoud klopt niet - foutmelding weergeven en velden niet verwerken
  33. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  34. $message.= $error_msg;
  35. $message.= "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  36. // Inhoud klopt - Geen foutmelding weergeven en velder verwerken
  37. }
  38. else
  39. {
  40. //Het invoegen in de database
  41. $berichtenbalk_sql = "INSERT INTO berichtenbalk (naam, bericht, tijd, ip) VALUES ('" . $_POST['naam'] . "','" . $_POST['bericht'] . "','" . $_POST['tijd'] . "','" . $_SERVER['REMOTE_ADDR'] . "');";
  42. if (mysql_query($berichtenbalk_sql))
  43. {
  44. echo "Je bericht is toegevoegd! klik <a href=\"berichtenbalk.php\">hier</a> om naar de berichtenbalk te gaan";
  45. }
  46. else
  47. {
  48. echo "INSERT fout: " . mysql_error($con) . "<br>\nQuery: " . $berichtenbalk_sql;
  49. }
  50. }
  51. //Er is niet op Post bericht gedrukt
  52. }
  53. else
  54. {
  55. ?>
  56. <html>
  57. <head>
  58. <title>Toevoegen bericht</title>
  59. </head>
  60.  
  61. <body>
  62. <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" name="berichtenbalk">
  63. <table width="90%" border="0" cellpadding="2" cellspacing="2">
  64. <tr bgcolor="#F9F9F9">
  65. <td colspan="3" height="25">
  66. Plaats een bericht
  67. </td>
  68. </tr>
  69. <tr bgcolor="#F9F9F9">
  70. <td width="263">
  71. Naam <input name="naam" type="text" maxlength="50">
  72. </td>
  73. <td width="334">
  74. Bericht <input name="bericht" type="text" maxlength="50">
  75. </td>
  76. <td width="83">
  77. <input type="submit" name="submit" value="Post bericht">
  78. </td>
  79. </tr>
  80. </table>
  81. </form>
  82. </body>
  83. </html>
  84. <?php
  85. }
  86. ?>
Offline Scoits - 24/10/2004 11:19 (laatste wijziging 24/10/2004 11:39)
Avatar van Scoits HTML interesse Grr.. Nu werkt de error mssg niet.. hij doet het zoiezo in de DB :S gaat lekker zo :x

Tijd werkt ook niet.. kep wel wat veranderd.. weet iemand wat er mis is?

  1. <?php
  2. //Invoegen config.php
  3. include("config.php");
  4.  
  5. //Als er op de knop Post bericht is gedrukt..
  6. if ($_SERVER['REQUEST_METHOD'] == "POST")
  7. {
  8. $tijd = time();
  9. // Is er een juiste naam ingevuld?
  10. if(strlen($_POST['naam'])<2)
  11. {
  12. // Geen juiste naam ingevuld
  13. $error_msg="Geen(geldige) naam ingevoerd. Er geld een minimum lengte van 2 tekens.";
  14. }
  15.  
  16. if(strlen($_POST['bericht'])<8)
  17. {
  18. // Te korte/Geen juiste inhoud ingevuld
  19. if(strlen($error_msg) > 0)
  20. {
  21. $error_msg .= "<br>Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  22. }
  23. else
  24. {
  25. $error_msg="Geen(geldige) inhoud ingevuld. Er geld een minimum lengte van 8 tekens.";
  26. }
  27. }
  28.  
  29. // Bestaat variabele error_msg?
  30. if (strlen(($error_msg) > 0))
  31. {
  32. // inhoud klopt niet - foutmelding weergeven en velden niet verwerken
  33. $message = "<br>Helaas kunnen we uw bericht niet in onze berichtenbalk opnemen:<br>";
  34. $message.= $error_msg;
  35. $message.= "<br>Klik op <a href=javascript:history.back(1)>Vorige</a>.<br><br>";
  36. echo $message;
  37. // Inhoud klopt - Geen foutmelding weergeven en velder verwerken
  38. }
  39. else
  40. {
  41. //Het invoegen in de database
  42. $berichtenbalk_sql = "INSERT INTO berichtenbalk (naam, bericht, tijd, ip) VALUES ('" . $_POST['naam'] . "','" . $_POST['bericht'] . "',$tijd,'" . $_SERVER['REMOTE_ADDR'] . "');";
  43. if (mysql_query($berichtenbalk_sql))
  44. {
  45. echo "Je bericht is toegevoegd! klik <a href=\"berichtenbalk.php\">hier</a> om naar de berichtenbalk te gaan";
  46. }
  47. else
  48. {
  49. echo "INSERT fout: " . mysql_error($con) . "<br>\nQuery: " . $berichtenbalk_sql;
  50. }
  51. }
  52. //Er is niet op Post bericht gedrukt
  53. }
  54. else
  55. {
  56. ?>
  57. <html>
  58. <head>
  59. <title>Toevoegen bericht</title>
  60. </head>
  61.  
  62. <body>
  63. <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" name="berichtenbalk">
  64. <table width="90%" border="0" cellpadding="2" cellspacing="2">
  65. <tr bgcolor="#F9F9F9">
  66. <td colspan="3" height="25">
  67. Plaats een bericht
  68. </td>
  69. </tr>
  70. <tr bgcolor="#F9F9F9">
  71. <td width="263">
  72. Naam <input name="naam" type="text" maxlength="50">
  73. </td>
  74. <td width="334">
  75. Bericht <input name="bericht" type="text" maxlength="50">
  76. </td>
  77. <td width="83">
  78. <input type="submit" name="submit" value="Post bericht">
  79. </td>
  80. </tr>
  81. </table>
  82. </form>
  83. </body>
  84. </html>
  85. <?php
  86. }
  87. ?>
Offline ZenoxParadox - 24/10/2004 17:10
Avatar van ZenoxParadox Nieuw lid hoe bedoel je je tijd werkt niet ? ik zie dat je een UNIX timestamp code opvraagt die een nummer geeft die over de tijd gaat misschien wil je wel geen tijd code maar een datum ?

  1. <?php
  2. $datum = date("Y-m-d") ;
  3. ?>


hoe dan ook, toen ik hetzelfde script op mijn servertje liet draaien werkte de UNIX timestamp prima, misschien heb je niet voldoende karakters ingesteld voor je code, dat hij het niet volledig opslaat, leg anders eens uit wat je precies wilt doen met je tijd code.
Offline Scoits - 24/10/2004 18:12
Avatar van Scoits HTML interesse thanx 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.391s