anoniem Geplaatst: 2 december 2003 Delen Geplaatst: 2 december 2003 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: </td><td><input type="text" name="afzender"></td></tr> <tr><td>Email: </td><td><input type="text" name="email"></td></tr> <tr><td>URL: </td><td><input type="text" name="url"></td></tr> <tr><td>Bericht: </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 Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 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. Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 Helaas.... :( dit was niet de fout die ik heb gemaak. toch bedankt. Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 gastenboek[u:be5cae00b7][i:be5cae00b7][b:be5cae00b7]z[/b:be5cae00b7][/i:be5cae00b7][/u:be5cae00b7] ? Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 Dank je wel, maar ook dit was helaas niet de fout. :( Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 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:25e0ba7369]SELECT 'test', 'test@test.nl', 'http://test.nl/', 'bla', '2003-12-02'[/color:25e0ba7369]). Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 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] Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 :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: Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 das een goeie! nog niet gezien Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [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. Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [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 Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [quote:6445659aea]typ foutje. thnx[/quote:6445659aea] maar is dat ook de oplossing??? Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 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"); } ?> Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 Ik zie zojuist dat het opgelost is :D Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [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.... Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [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 Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 [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 Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 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] Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 Bedankt voor de tips :D Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 maar gek genoeg werkt het nog steeds niet. :-? Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen