01. november 2004 - 15:15
Der er
32 kommentarer og 1 løsning
php guide
Sidder med en php guide er kommet til hvor jeg skal oprette en tabel. Men kan ikke få den oprettet via sql sætningen hvordan gør man det manuelt det har heller ikke lykkedes mig... koden de har brugt 1: <?php 2: // open the connection 3: $conn = mysql_connect("localhost", "joeuser", "somepass"); 4: // pick the database to use 5: mysql_select_db("testDB",$conn); 6: // create the SQL statement 7: $sql = "CREATE TABLE testTable (id int not null primary key auto_increment, 8: testField varchar (75))"; 9: // execute the SQL statement 10: $result = mysql_query($sql, $conn); 11: // echo the result identifier 12: echo $result; 13: ?>
Annonceindlæg fra Pointsharp
01. november 2004 - 15:19
#1
Det ser rigtigt ud. Du skal rette: brugernavn password database (og eventuelt host) Og du skal naturligvis ikke angive linienumre.
01. november 2004 - 15:20
#2
tror jeg fik den oprettet
01. november 2004 - 15:20
#3
bruger phpmyadmin
01. november 2004 - 15:34
#4
har lavet en include til connect stregen... er det korrekt skrevet? <?php // open the connection $conn = include("database.php"); // pick the database to use mysql_select_db("testDB",$conn); // create the SQL statement $sql = "INSERT INTO list values ('', '$_POST[testField]')"; // execute the SQL statement if (mysql_query($sql, $conn)) { echo "record added!"; } else { echo "something went wrong"; } ?>
01. november 2004 - 15:40
#5
Det virker nu men ønsker at gøre brug af include strengen så jegikke skal rette pass er user på alle siderne... <?php // open the connection $conn = mysql_connect("localhost", "web33", "51947081"); // pick the database to use mysql_select_db("usr_web33_1",$conn); // create the SQL statement $sql = "INSERT INTO list values ('', '$_POST[testField]')"; // execute the SQL statement if (mysql_query($sql, $conn)) { echo "record added!"; } else { echo "something went wrong"; } ?>
01. november 2004 - 15:42
#6
det er vel bare at skifte $conn ud med include("database.php");
01. november 2004 - 16:42
#7
Jeg troede at man bare skrev include "database.php"; men ja
01. november 2004 - 17:16
#8
begge dele virker :) Vil gerne have dataen der kommer ud fra database til at blive pænt opstillet ændre font osv. Men har prøvet at insætte det i tabel men får en parse error. echo "The ID is $id and the text is $test <br>"; skrev følgende echo "<table width="100%" border="0"> <tr> <td>$id</td> <td>$test</td> </tr> </table> men virker som sagt ikke...
01. november 2004 - 17:26
#9
Prøv: echo "<table width='100%' border='0'>"; echo " <tr>"; echo " <td>$id</td>"; echo " <td>$test</td>"; echo " </tr>"; echo "</table>";
01. november 2004 - 17:26
#10
Eller bedre flyt HTML taggene udenfor PHP blokken.
01. november 2004 - 17:26
#11
og et svar
01. november 2004 - 17:29
#12
hmm er jeg langt fra :( $test = $newArray['test']; //echo the results onscreen } ?> <table width="100%" border="0"> <tr> <td><?=$row[id];?></td> <td><?=$row[test];?></td> </tr> </table>
01. november 2004 - 17:30
#13
eller har du en bedre måde at lave et udtræk ?
01. november 2004 - 17:31
#14
Hvis du kun har en række er det vist nydeligt.
01. november 2004 - 17:37
#15
tja... det er meningen man skal kunne søge i database og klikke videre.. så kommer der flere rækkere?
01. november 2004 - 17:39
#16
Så skal du jo have en løkke. Måske noget ligesom dette: <?php $con = mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("Test") or die(mysql_error()); ?> <table border="1"> <tr> <th>F1</th> </tr> <?php $rs = mysql_query("SELECT * FROM T1") or die(mysql_error()); while ($row = mysql_fetch_array($rs, MYSQL_ASSOC)) { print "<tr>\n"; print "<td><a href='showone?F1=" . $row["F1"] . "'>" . $row["F1"] . "</a></td>\n"; print "</tr>\n"; } mysql_free_result($rs); ?> </table> <?php mysql_close($con); ?>
01. november 2004 - 17:43
#17
hvis jeg nu heller ville referere til db.php filen <?php $con = mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("Test") or die(mysql_error()); ?> hvad skal jeg så skrive istedet for at skrive sætningen med user og pass hver gang?
01. november 2004 - 17:46
#18
vel bare at skiftet det de 2 liner ud med include("database.php"); ik..
01. november 2004 - 17:48
#19
Jo. Pointen i mit eksempel var while løkken.
01. november 2004 - 17:52
#20
sådan, men får fejl når den lukke connecttionen bagefter <?php $con = include "database.php"; ?> <table border="1"> <tr> <th>F1</th> </tr> <?php $rs = mysql_query("SELECT * FROM list") or die(mysql_error()); while ($row = mysql_fetch_array($rs, MYSQL_ASSOC)) { print "<tr>\n"; print "<td><a href='showone?F1=" . $row["id"] . "'>" . $row["test"] . "</a></td>\n"; print "</tr>\n"; } mysql_free_result($rs); ?> </table>
01. november 2004 - 18:07
#21
Hvilken fejl ?
01. november 2004 - 18:27
#22
har lavet en form og skal tilføje data via formen... $sql = "INSERT INTO list values ('', '$_POST[navn]', '$_POST[emne]', $_POST[year]',)"; hvor ligger fejlen
01. november 2004 - 18:52
#23
Skal det ikke være: $sql = "INSERT INTO list values ('', '$_POST[navn]', '$_POST[emne]', $_POST[year]')"; altså uden det sidste komma ?
01. november 2004 - 18:56
#24
$sql = "INSERT INTO list values ('$_POST[navn]', '$_POST[emne]', $_POST[year]')"; Og uden den förste '', hvis det er autogenereret ID.
01. november 2004 - 18:59
#25
det er autogenereret ID
01. november 2004 - 19:00
#26
Så skal du bruge: $sql = "INSERT INTO list values (NULL, '$_POST[navn]', '$_POST[emne]', $_POST[year]')"; eller $sql = "INSERT INTO list (navn,emne,year) values ('$_POST[navn]', '$_POST[emne]', $_POST[year]')";
01. november 2004 - 19:00
#27
fik fande det til at virke før.. men nu kan jeg lige pludselig ikke få den til at indsætte data via formularen får fejl...
01. november 2004 - 19:02
#28
prøver
01. november 2004 - 19:05
#29
ok inden jeg banker hovedet ind i væggen hvad er der galt... Min form: <HTML> <HEAD> <TITLE>Insert Form</TITLE> </HEAD> <BODY> <FORM ACTION="insert.php" METHOD=POST> <P>Tilføje TV artikel </p> <table width="100%" border="0"> <tr> <td width="20%">Model navn </td> <td width="80%"><input type=text name="name" size=30></td> </tr> <tr> <td>Årgang</td> <td><input type=text name="year" size=30></td> </tr> <tr> <td>emne </td> <td><input type=text name="emne" size=30></td> </tr> <tr> <td>Beskrivelse </td> <td><input type=text name="beskriv" size=30></td> </tr> <tr> <td> </td> <td> </td> </tr> </table> <P><br> <input type=submit name="submit" value="Insert Record"> </p> </FORM> </BODY> </HTML> php delen <?php // open the connection $conn = mysql_connect("localhost", "xxx", "xxx1"); // pick the database to use mysql_select_db("list",$conn); // create the SQL statement $sql = "INSERT INTO list values (NULL, '$_POST[name]', '$_POST[emne]', $_POST[year]')"; // execute the SQL statement if (mysql_query($sql, $conn)) { echo "record added!"; } else { echo "something went wrong"; } ?>
01. november 2004 - 19:26
#30
Mangler der ike også en dap foran year ? $sql = "INSERT INTO list values (NULL, '$_POST[name]', '$_POST[emne]', '$_POST[year]')";
01. november 2004 - 21:56
#31
php delen did something wrong :(
01. november 2004 - 21:59
#32
en de lige gider se om problemet ligger i min database?
01. november 2004 - 22:14
#33
dette er min include db <?php $conn = mysql_connect("localhost", "xxx", "xxx"); mysql_select_db("usr_web33_1",$conn); ?> den ser da rigtig ud ik?
Computerworld tilbyder specialiserede kurser i database-management