28. oktober 2007 - 20:00
Der er
27 kommentarer og 1 løsning
php sender ikke data videre
Jeg er ny indenfor php og mysql. Nu mangler jeg hjælp til løsning af dette problem. Jeg har følgende form: <head> <title>Svarskema</title> <meta name="Generator" content="Stone's WebWriter 4"> </head> <body> <!-- Her er formularen --> <form name="svarskema" method="post" action="DSUS.php"> <p>Skriv nu Dato her : <input name="dato" size="50" maxlength="50" type="text" /></p> <p>Skriv stedet her : <input name="sted" size="50" maxlength="50" type="text" /></p> <p>Skriv tidspunkt her: <input name="tid" size="50" maxlength="50" type="text" /></p> <input name="send" value="Del dine oplysninger med andre" type="submit" /> </form> </body> </html> og DSUS.php er her: <?php // Hent indholdet af formularens felter $dato = $_REQUEST["dato"]; $sted = $_REQUEST["sted"]; $tid = $_REQUEST["tid"]; // Skab forbindelse til databasen her mysql_connect("localhost", "xxxxx", "xxxxxx") or die(mysql_error()); mysql_select_db("test") or die(mysql_error()); //Indsæt indholdet af formularfelterne i databasen mysql_query("INSERT INTO ar(ID, dato, sted, tid, resultat) values(0, '$dato', '$sted', '$tid' 'Resultat kommer her' )"); print "$dato"; print "$sted"; print "$tid"; ?> De tre sidste linier tjener kun for at se om de tre varaibler bliver sat. Hvor ligger katten begravet.
Annonceindlæg fra Barco
28. oktober 2007 - 20:15
#1
Hvad med $_GET["dato"] i stedet?
28. oktober 2007 - 20:19
#2
Det gør ingen forskel, kun det at nu bliver variabelnavnene ikke sat.
28. oktober 2007 - 20:23
#3
$_POST i stedet for $_GET
28. oktober 2007 - 20:26
#4
Hjalp heller ikke.
28. oktober 2007 - 20:26
#5
Hvad er det problemet er ??? Måske: mysql_query("INSERT INTO ar(ID, dato, sted, tid, resultat) values(0, '$dato', '$sted', '$tid' 'Resultat kommer her' )") or die(mysql_error());
28. oktober 2007 - 20:27
#6
Gætter på at id er sat til auto_increment. Dermed skal den ikke sættes til 0: mysql_query("INSERT INTO ar(dato, sted, tid, resultat) values('$dato', '$sted', '$tid' 'Resultat kommer her' )") or die(mysql_error());
28. oktober 2007 - 20:28
#7
Der mangler oogså et komma: mysql_query("INSERT INTO ar(ID, dato, sted, tid, resultat) values(0, '$dato', '$sted', '$tid', 'Resultat kommer her' )") or die(mysql_error());
28. oktober 2007 - 20:28
#8
Lige efter '$tid': mysql_query("INSERT INTO ar(dato, sted, tid, resultat) values('$dato', '$sted', '$tid', 'Resultat kommer her' )") or die(mysql_error());
28. oktober 2007 - 20:31
#9
Gør heller ingen forskel.
28. oktober 2007 - 20:32
#10
Jamen, hvad sker der, hvad melder den af fejl, og hvad sker der ikke ???
28. oktober 2007 - 20:33
#11
dkfire problemet er det, at de data jeg indtaster ikke kommer ind i min mysql database.
28. oktober 2007 - 20:35
#12
Prøv dette: <?php // Hent indholdet af formularens felter $dato = $_POST["dato"]; $sted = $_POST["sted"]; $tid = $_POST["tid"]; // Skab forbindelse til databasen her mysql_connect("localhost", "xxxxx", "xxxxxx") or die(mysql_error()); mysql_select_db("test") or die(mysql_error()); // Indsæt indholdet af formularfelterne i databasen $sql = "INSERT INTO ar (dato, sted, tid, resultat) VALUES ('$dato', '$sted', '$tid', 'Resultat kommer her')"; echo "DEBUG: $sql<br>"; mysql_query($sql) or die(mysql_error()); ?>
28. oktober 2007 - 20:35
#13
phpmyadmin foreslår denne struktur: INSERT INTO `test`.`ar` ( `ID` , `dato` , `sted` , `tid` , `resultat` ) VALUES ( '5', '20112007', 'XXXXXXXXX', '20:00', NULL );
28. oktober 2007 - 20:36
#14
DEBUG: Query was empty
28. oktober 2007 - 20:38
#15
Det ser ikke ud som om du har prøvet med hele koden?
28. oktober 2007 - 20:39
#16
Nåå ja du skal lige rette ' til ` i nielle's forslag. Men under alle omstændigheder må den give en eller andet fejlmeddelse tilbage nrå det ikke lykkes.
28. oktober 2007 - 20:40
#17
Nej, der skal da ikke rettes til `
28. oktober 2007 - 20:40
#18
Jo, hele koden er med.
28. oktober 2007 - 20:41
#19
Det ser nu eller bestemt ud til at den del som sætter variablen $sql til en værdi ikke er der?
28. oktober 2007 - 20:43
#20
Prøv at vise hele den kode som du tester lige nu.
28. oktober 2007 - 20:45
#21
Hov. hvad skete der lige der. Nu kommer følgende: DEBUG: INSERT INTO ar (dato, sted, tid, resultat) VALUES ('12082008', 'Kerteminde ', '20:00', 'Resultat kommer her') Nu fih jeg pludesleig ter nye linier. i mysql. Forklaring udbedes.
28. oktober 2007 - 20:49
#22
Tror at du er offer for alle web-udvikleres yndlings avasion - caching. Hvor siden, der vises, i virkeligheden slet ikke svare til noget kode der er blevet kørt, men blot er hentet fra browserens cache... Ctrl-F5 plejer at tvinge browseren til at hente filene. Og då kan også gå aktivt ind og tømme cabchen.
28. oktober 2007 - 20:56
#23
Problemet er bare, når jeg går tilbage til udgangspunktet sker der ingenting igen.
28. oktober 2007 - 21:00
#24
Hvad mener du med at gå tilbage til udgangspunktet?
28. oktober 2007 - 21:04
#25
Ja, nu får jeg ikke data ind i mysql database.
28. oktober 2007 - 21:07
#26
Jeg mener, hvorfor gå tilbage: Der var fejl i udgangspunktet, så det skal du ikke tilbage til. Koden fra 28/10-2007 20:35:24 virker, så det er den du skal bruge. Hvis du ikke vil have SQL sætningen udskrevet, skal du blot have slettet den ene linje med DEBUG udskriften i.
28. oktober 2007 - 21:16
#27
ja, selvfølgelig. Smid et svar og du får dine point
28. oktober 2007 - 21:19
#28
Svar :^)
Vi tilbyder markedets bedste kurser inden for webudvikling