Ga naar inhoud

gastenboek computotaal 12


anoniem

Aanbevolen berichten

Ik heb het gastenboek gemaakt dat in nr 12 staat, maar hij geeft bij mij een fout aan in regel 23 het voorbeeld is te zien op www.pinquin.nl en dan gastenboek. Dit is het script: <html> <body> <center><h1>Gastenboek</h1></center> <form action="?pagina=plaatsbericht" method="post"> <table border="0"> <tr><td>Naam:&nbsp;</td><td><input type="text" name="afzender"></td></tr> <tr><td>Email:&nbsp;</td><td><input type="text" name="email"></td></tr> <tr><td>URL:&nbsp;</td><td><input type="text" name="url"></td></tr> <tr><td>Bericht:&nbsp;</td><td><textarea name="bericht" cols="40" rows="5"></textarea></td></tr> <tr><td><input type="submit" value="plaats bericht"></td><td><input type="reset" value="reset"></td></tr> </table> </form> <br> <?php $db = mysql_connect("localhost", "*******", "******"); mysql_select_db("********"); $berichten_query = mysql_query(" SELECT afzender, email, url, bericht, berichtdatum FROM gastenboek ORDER BY berichtdatum DESC LIMIT 30"); :o !!!regel 23!!! while ($record = mysql_fetch_assoc ($berichten_query)) { echo("Afzender: {$record['afzender']}<br>"); if(strlen($record['email']) > 0) { echo("Email: {$record['email']}<br>"); } if(strlen($record['url']) > 0) { echo("URL: <a href='{$record['url']}'>{$record['url']}</a><br>"); } echo("Bericht: {$record['bericht']}<br>"); echo("Berichtendatum: {$record['berichtdatum']}<br>"); echo("<br>"); } ?> </body> </html> is er iemand die mij hier mee kan helpen? bij voorbaat dank, pinquin2804
Link naar reactie
Net onder regel 23 staat: [code:1:b06576509f] { echo("Afzender: {record['afzender']}<br>"); if(strlen($record['email']) > 0)[/code:1:b06576509f] Maak daar eens: [code:1:b06576509f] { echo("Afzender: {$record['afzender']}<br>"); if(strlen($record['email']) > 0) [/code:1:b06576509f] van. Je was bij de record het $ teken gebruikt. Ik weet niet of het nu wel werkt, maar je weet maar nooit.
Link naar reactie
mss dat er wat fout is met je db. Heb je al wel deze query uitgevoerd? [code:1:ce6dd7ac17]CREATE TABLE berichten ( bericht_is INT AUTO_INCREMENT PRIMARY KEY, afzender VARCHAR(50), email VARCHAR(50), url VARCHAR(50), bericht TEXT, berichtdatum DATETIME );[/code:1:ce6dd7ac17] [code:1:ce6dd7ac17]INSERT INTO berichten (afzender, email, url, bericht, berichtdatum) VALUES ('piet', 'piet@piet.nl', 'http://www.piet.nl', 'een test bericht', NOW()); enz...[/code:1:ce6dd7ac17]
Link naar reactie
:o[code:1:7f04b6490c]$berichten_query = mysql_query(" SELECT afzender, email, url, bericht, berichtdatum FROM gastenboek ORDER BY berichtendatum DESC LIMIT 30");[/code:1:7f04b6490c]Waarom staat hier eigenlijk één maal bericht[color=red:7f04b6490c][b:7f04b6490c]en[/b:7f04b6490c][/color:7f04b6490c]datum en een maal berichtdatum!... :wink:
Link naar reactie
[quote:eb66c1e419="stierenoog"]mss dat er wat fout is met je db. Heb je al wel deze query uitgevoerd? [code:1:eb66c1e419]CREATE TABLE berichten ( bericht_is INT AUTO_INCREMENT PRIMARY KEY, afzender VARCHAR(50), email VARCHAR(50), url VARCHAR(50), bericht TEXT, berichtdatum DATETIME );[/code:1:eb66c1e419] [code:1:eb66c1e419]INSERT INTO berichten (afzender, email, url, bericht, berichtdatum) VALUES ('piet', 'piet@piet.nl', 'http://www.piet.nl', 'een test bericht', NOW()); enz...[/code:1:eb66c1e419][/quote:eb66c1e419] De query is goed uitgevoerd en ik heb ook ook gegevens ingevoerd, maar er komt helemaal niets te staan behalve dan de fout melding.
Link naar reactie
[quote:c5b65908e3="jossan"]:o[code:1:c5b65908e3]$berichten_query = mysql_query(" SELECT afzender, email, url, bericht, berichtdatum FROM gastenboek ORDER BY berichtendatum DESC LIMIT 30");[/code:1:c5b65908e3]Waarom staat hier eigenlijk één maal bericht[color=red:c5b65908e3][b:c5b65908e3]en[/b:c5b65908e3][/color:c5b65908e3]datum en een maal berichtdatum!... :wink:[/quote:c5b65908e3] :oops: typ foutje. thnx
Link naar reactie
de fout is nu weg, maar als ik het formulier invul, dan geeft ie aan dat ik geen naam heb ingevult, wat kan hier het probleem zijn. Hier de plaatsbericht.php: <?php if(strlen($_post['afzender']) < 1 || strlen($_post['bericht']) < 1) { echo("Je hebt geen naam of bericht opgegeven. <a href='?pagina=gastenboek'>Terug naar het gastenboek</a>"); } else { $db = mysql_connect("localhost", "********", "*******"); mysql_select_db("******"); $afzender = mysql_escape_string(strip_tags($_post['afzender'])); $email = mysql_escape_string(strip_tags($_post['email'])); $url = mysql_escape_string(strip_tags($_post['url'])); $bericht = mysql_escape_string(strip_tags($_post['bericht'])); mysql_query(" INSERT INTO gastenboek (afzender, email, url, berichten, berichtendatum) VALUES ('($afzender)', '($email)', '($url)', '($bericht)', NOW()) "); header ("location: http://www.pinquin.nl/?pagina=gastenboek"); } ?>
Link naar reactie
[code:1:a64c14dd7c] mysql_query(" INSERT INTO gastenboek (afzender, email, url, berichten, berichtendatum) VALUES ('($afzender)', '($email)', '($url)', '($bericht)', NOW()) "); [/code:1:a64c14dd7c] verander in [code:1:a64c14dd7c] mysql_query(" INSERT INTO berichten (afzender, email, url, bericht, berichtdatum) VALUES ('($afzender)', '($email)', '($url)', '($bericht)', NOW()) "); [/code:1:a64c14dd7c] helpt mss Daardoor kan je wss ook niet posten nu....
Link naar reactie
[quote:54914169d2="Annie"]Heb je al eens geprobeerd om je query rechtstreeks uit te voeren op de database? Wat krijg je dan terug? Of om een query te gebruiken die alleen constante waarden retourneert? (bijv: [color=blue:54914169d2]SELECT 'test', 'test@test.nl', 'http://test.nl/', 'bla', '2003-12-02'[/color:54914169d2]).[/quote:54914169d2] hij geeft alleen de berichten weer die ik met sql heb ingevoerd. krijg geen foutmeldingen meer alleen er kan geen bericht worden ingevoerd
Link naar reactie
[quote:a7111fa0af="stierenoog"][code:1:a7111fa0af] mysql_query(" INSERT INTO gastenboek (afzender, email, url, berichten, berichtendatum) VALUES ('($afzender)', '($email)', '($url)', '($bericht)', NOW()) "); [/code:1:a7111fa0af] verander in [code:1:a7111fa0af] mysql_query(" INSERT INTO berichten (afzender, email, url, bericht, berichtdatum) VALUES ('($afzender)', '($email)', '($url)', '($bericht)', NOW()) "); [/code:1:a7111fa0af] helpt mss Daardoor kan je wss ook niet posten nu....[/quote:a7111fa0af] Ik heb een nieuwe table gemaakt (berichten) heb ik ook iets ingezet en in plaatsbericht.php en gastenboek.php [code:1:a7111fa0af]INSERT INTO berichten[/code:1:a7111fa0af] en [code:1:a7111fa0af]SELECT afzender, email, url, bericht, berichtdatum FROM berichten ORDER BY berichtdatum DESC LIMIT 30");[/code:1:a7111fa0af] veranderd, maar er kan nog steeds niets worden gepost
Link naar reactie
Allereerst. Moet het niet $_POST zijn in plaats van $_post? Ten tweede. Probeer bij problemen eerst een paar standaard debugtechnieken om het probleem te lokaliseren. In dit geval: je geeft aan dat je de melding krijgt dat de naam of het bericht niet is ingevuld. Een aantal mogelijke aanknopingspunten: [list:84c1a627e7] [*:84c1a627e7]Schrijf de inhoud van de variabelen in kwestie naar het scherm(bijv. [i:84c1a627e7]$_POST['afzender'][/i:84c1a627e7]), zodat je kan controleren of er ook iets in zit. Of print de complete collectie ([url=http://www.php.net/print_r]print_r($_POST)[/url]). [*:84c1a627e7]Controleer de method van je <form>. Is deze POST of GET? M.a.w. hoe krijgt je script zijn input? [*:84c1a627e7]Controleer de namen van je form-inputs (let op case-sensitivity) [*:84c1a627e7]Kijk in je code of er bewerkingen zijn op de variabelen die van invloed kunnen zijn. Is dit het geval, schakel deze dan tijdelijk uit of geef een waarde terug waarvan het gedrag bekend is. [/list:u:84c1a627e7]
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...