27. september 2001 - 13:31
Der er
18 kommentarer og 1 løsning
Hjælp til fejl i \"tagwall\"
Jeg har fulgt en tutorial på en tagwall og får følgende fejl: Warning: Supplied argument is not a valid MySQL result resource in tagwall.php3 on line 49 Koden i tagwall.php3: <? $connection = mysql_connect(\"localhost\",\"magnify\",\"gr4ffiti\"); mysql_select_db(\"database\", $connection); if($nick != \" \" && $msg != \" \") { $nick = htmlentities($nick); $msg = htmlentities($msg); mysql_query(\"insert into tagwall(id, navn, msg, ip) values (\'\',\'$nick\',\'$msg\',\'$REMOTE_ADDR\')\"); } ?> <form action=\"tagwall.php\" method=\"post\"> <table border=\"0\" align=\"center\"> <tr> <td><font face=\"verdana\" size=\"2\">Navn:</font></td> <td></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"text\" name=\"nick\" size=\"40\" maxlength=\"20\"> </font></td> </tr> <tr> <td> <font face=\"verdana\" size=\"2\">Tag:</font><font size=\"2\"><br> <input type=\"text\" name=\"msg\" size=\"40\" maxlength=\"200\"> </font></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"submit\" value=\"Skriv Tag\"> </font></td> <td></td> </tr> </table> </form> <table> <? $result = mysql_query(\"select * from tagwall order by id desc\"); while($row = mysql_fetch_array($result)) { echo\"<tr><td><font face=verdana size=1>$row[navn] : $row[msg] </td></tr>\\n\"; } ?> Det kunne jo være rart hvis en nubi som kunne få lidt hjælp der.. :)
Annonceindlæg fra Novataris
Vejen til devops med Bavarian Nordic
Bavarian Nordics vækst blev starten på et DevOps-samarbejde med Novataris for hurtigt at kunne tilpasse IT-organisation til forretningen.
7. december 2023
27. september 2001 - 13:36
#1
altså du får jo en fejl om at den ikke har lavet et korrekt mysql opslag.. og din kode ser jo egentlig rigtig nok ud.. så det muligheder jeg kan se er: 1. du bruger forkerte informationer til at connecte til mysql serveren. 2. der er ikke nogen database der hedder \"database\" 3. der er ikke nogen tabel i databasen der hedder \"tagwall\" Der er forresten lige i slutningen hvor du laver din while sætning.. der skriver du echo\"<tr_osv_osv.. du skal lige sætte et mellemrum mellem echo og \"
27. september 2001 - 13:49
#2
Okay det virker nu.. MEN hver gang jeg reloader siden skriver den \":\" - Det må jo være et tag uden navn og besked ? Kan man ikke ordne det og hvordan ? :)
27. september 2001 - 14:19
#3
$result = mysql_query(\"select * from tagwall where navn!=\'\' and msg!=\'\' order by id desc\"); burde udelukke alt fra mysql der ikke indeholder noget, meen du kunne også slette dem manuelt, og så tjekke ved afsendelse af nye om der er noget tekst.
27. september 2001 - 15:18
#4
Hmmm det virker ok nu.. men den skriver stadigvæk det sidste skrevne tag hvergang jeg reloader.. :(
27. september 2001 - 15:21
#5
Ja ? du order desc, skriv asc hvis det skal være det første
27. september 2001 - 15:23
#6
ok jeg fik ik\' forklaret mig godt nok.. :) Den skriver det sidste tag en gang TIL hvergang jeg reloader...
27. september 2001 - 15:29
#7
altså den kopierer det sidste tag hvergang jeg reloader... :/
27. september 2001 - 15:35
#8
Er det ikke kun hvis du lige har lavet en tag og så reloader ? lav evt. en header forvard lige efter du har addet tagget ...
27. september 2001 - 15:36
#9
Hmmm den skal jeg vidst have forklaret lidt nærmere.. :)
27. september 2001 - 15:37
#10
Kan jeg se din kilde, så kan jeg lige rette det :)
27. september 2001 - 15:38
#11
Doh, øjeblik
27. september 2001 - 15:39
#12
if($nick != \" \" && $msg != \" \") { $nick = htmlentities($nick); $msg = htmlentities($msg); mysql_query(\"insert into tagwall(id, navn, msg, ip) values (\'\',\'$nick\',\'$msg\',\'$REMOTE_ADDR\')\"); header(\"Location: tagwall.php?\"); } Det kræver dog at der ikek er noget output over denne linje ...
27. september 2001 - 15:39
#13
HVorfor har du forresten et , lige før \"$nick ?
27. september 2001 - 15:40
#14
Hehe mange tak.. Jeg er jo totalt nubi.. Men jeg tror jeg kigger på det imorgen igen.. :)
27. september 2001 - 15:42
#15
Ok, overstående går at så snart ens tag er addet, sendes man til tagbogen igen, dermed vil en reload IKKE adde ens tag en gang til. Husk at lave en no-cache hvis du ikke har det på din hoved side?
27. september 2001 - 15:43
#16
Jeg tager det imorgen skal smutte nu .. :D
08. november 2001 - 18:11
#17
Den her virker :P <? $connection = mysql_connect(\"localhost\",\"magnify\",\"gr4ffiti\"); mysql_select_db(\"database\", $connection); if($nick && $msg{ $nick = htmlentities($nick); $msg = htmlentities($msg); mysql_query(\"insert into tagwall(id, navn, msg, ip) values (\'\',\'$nick\',\'$msg\',\'$REMOTE_ADDR\')\"); } ?> <form action=\"tagwall.php\" method=\"post\"> <table border=\"0\" align=\"center\"> <tr> <td><font face=\"verdana\" size=\"2\">Navn:</font></td> <td></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"text\" name=\"nick\" size=\"40\" maxlength=\"20\"> </font></td> </tr> <tr> <td> <font face=\"verdana\" size=\"2\">Tag:</font><font size=\"2\"><br> <input type=\"text\" name=\"msg\" size=\"40\" maxlength=\"200\"> </font></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"submit\" value=\"Skriv Tag\"> </font></td> <td></td> </tr> </table> </form> <table> <? $result = mysql_query(\"select * from tagwall order by id desc\"); while($row = mysql_fetch_array($result)) { echo\"<tr><td><font face=verdana size=1>$row[navn] : $row[msg] </td></tr>\\n\"; } ?>
08. november 2001 - 18:12
#18
LOL der mangler ) så her er den: <? $connection = mysql_connect(\"localhost\",\"magnify\",\"gr4ffiti\"); mysql_select_db(\"database\", $connection); if($nick && $msg) { $nick = htmlentities($nick); $msg = htmlentities($msg); mysql_query(\"insert into tagwall(id, navn, msg, ip) values (\'\',\'$nick\',\'$msg\',\'$REMOTE_ADDR\')\"); } ?> <form action=\"tagwall.php\" method=\"post\"> <table border=\"0\" align=\"center\"> <tr> <td><font face=\"verdana\" size=\"2\">Navn:</font></td> <td></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"text\" name=\"nick\" size=\"40\" maxlength=\"20\"> </font></td> </tr> <tr> <td> <font face=\"verdana\" size=\"2\">Tag:</font><font size=\"2\"><br> <input type=\"text\" name=\"msg\" size=\"40\" maxlength=\"200\"> </font></td> </tr> <tr> <td> <font size=\"2\"> <input type=\"submit\" value=\"Skriv Tag\"> </font></td> <td></td> </tr> </table> </form> <table> <? $result = mysql_query(\"select * from tagwall order by id desc\"); while($row = mysql_fetch_array($result)) { echo\"<tr><td><font face=verdana size=1>$row[navn] : $row[msg] </td></tr>\\n\"; } ?>
08. november 2001 - 18:13
#19
den vil da adde ens tag ved reload, som den ikke skal ?
Vi tilbyder markedets bedste kurser inden for webudvikling