06. august 2005 - 17:29
Der er
17 kommentarer og 1 løsning
MySQL ingen output
Jeg har dette gemt, men siden er bare blank: <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php mysql_query("create database Data"); $tabelSQL = "create Table Tabel ( navn varchar(50), )"; mysql_query($tabelSQL); $insertSQL = "insert into Tabel (navn) values ('Rene Møller')"; mysql_query($insertSQL); $resultat = mysql_query("select * from Tabel"); while ($raekke = @mysql_fetch_array($resultat)) { echo "Navn: ".$raekke['navn']."<br />"; } ?> </body> </html> Hvordan får man det til at virke? Jeg har endnu ikke fået noget med database til at virke, så der er vel noget galt.
Annonceindlæg fra Axcess Nordic
06. august 2005 - 17:34
#1
Først og fremmest så skift: $resultat = mysql_query("select * from Tabel"); til: $resultat = mysql_query("select * from Tabel") or die(mysql_error()); ... og fjern @'et i din mysql_fetch_array så du kan se fejlmeddelelser.
06. august 2005 - 17:39
#2
create database, create table, plejer man at gøre "een gang for alle" - et andet sted. Er det på din egen server, webhotel?
06. august 2005 - 18:17
#3
Det er på min egen server.
06. august 2005 - 18:19
#4
Nu har jeg ændret som jaw sagde og nu siger den: No Database Selected
06. august 2005 - 18:22
#5
Det er så fordi du mangler at connecte: mysql_connect("host", "user", "pass"); mysql_select_db("databasenavn");
06. august 2005 - 18:34
#6
Hvor skal det stå i min kode? Jeg har sat det i toppen men så siger den: Table 'Data.tabel' doesn't exist
06. august 2005 - 18:43
#7
Hvad skriver du helt præcist? De eksempler vi giver dig har ikke nødvendigvis de samme navne.
06. august 2005 - 18:48
#8
<?php mysql_query("create database Data"); mysql_connect("localhost", "root"); mysql_select_db("Data"); $tabelSQL = "create Table Tabel ( navn varchar(50), )"; mysql_query($tabelSQL); $insertSQL = "insert into Tabel (navn) values ('Rene Møller')"; mysql_query($insertSQL); $resultat = mysql_query("select * from Tabel") or die(mysql_error()); while ($raekke = mysql_fetch_array($resultat)) { echo "Navn: ".$raekke[navn]."<br />"; } ?>
06. august 2005 - 19:14
#9
Jeg forstår ikke det med while-løkken. Skal man ikke skrive et udsagn i parenteserne? Hvorfor er der lavet en variabel-tildeling så?
06. august 2005 - 19:22
#10
Det må næsten skulle være således: <?php mysql_connect("localhost", "root", ""); mysql_query("create database Data"); mysql_select_db("Data"); $tabelSQL = "create Table Tabel ( navn varchar(50), )"; mysql_query($tabelSQL); $insertSQL = "insert into Tabel (navn) values ('Rene Møller')"; mysql_query($insertSQL); $resultat = mysql_query("select * from Tabel") or die(mysql_error()); while ($raekke = mysql_fetch_array($resultat)) { echo "Navn: ".$raekke[navn]."<br />"; } ?> Og du har da ingen variabeltildeling i din while-løkke, men derimod en udskrivning af variablen $raekke[navn].
06. august 2005 - 19:45
#11
Der er stadig samme fejl. Virker det hos dig?
06. august 2005 - 20:06
#12
1) Efter hvert eneste mysql-sætning bør/skal du have noget der siger, hvis der er fejl mysql_query($tabelSQL) or die(mysql_error()); 2) Så vi du opdage at du har et komma for meget i een af dine sql-sætninger. Prøv! 3) Du skal altså oprette database og tabel et andet sted. Det er det du kommer til i fremtiden.
06. august 2005 - 20:14
#13
Jeg har slettet kommaet og tilføjet or die alle steder, men nu siger den: Can't create database 'Data'. Database exists Mit script: <?php mysql_connect("localhost", "root", ""); mysql_query("create database Data") or die(mysql_error()); mysql_select_db("Data"); $tabelSQL = "create Table Tabel ( navn varchar(50) )"; mysql_query($tabelSQL) or die(mysql_error()); $insertSQL = "insert into Tabel (navn) values ('Rene Møller')"; mysql_query($insertSQL) or die(mysql_error()); $resultat = mysql_query("select * from Tabel") or die(mysql_error()); while ($raekke = mysql_fetch_array($resultat)) { echo "Navn: ".$raekke[navn]."<br />"; } ?>
06. august 2005 - 20:16
#14
Ja, for du har jo allerede oprettet den i dine tidligere kørsler. Bemærk venligst 3) fra før.
06. august 2005 - 20:31
#15
Nåh ok nu forstår jeg det. Tak ska du have. Lav et svar så får du point.
06. august 2005 - 20:33
#16
Jeg samler slet ikke på point, tak.
06. august 2005 - 21:21
#17
Du har ellers ret mange :D, men okay jeg tager dem selv så..
07. august 2005 - 19:01
#18
Selv tak ?!
Computerworld tilbyder specialiserede kurser i database-management