Avatar billede chris18 Nybegynder
29. august 2000 - 21:27 Der er 3 kommentarer og
2 løsninger

insert i MySQL

Hej gruppe,

Jeg har lavet en tabel i min database, der er som følger:
\"CREATE TABLE beskedsystem ( id tinyint(4) DEFAULT \'0\' NOT NULL AUTO_INCREMENT,  navn varchar(20),  dato varchar(10),  besked varchar(255),  PRIMARY KEY (id),  UNIQUE id (id))\"

men når jeg kører det følgende script, vil det ikke indsætte oplysninger i min tabel. Er der nogen der kan sige mig hvad jeg gør galt????

<?php

$navn = \"christian\";
$dato = \"290800\";
$besked = \"Hejsa\";
$databasenavn = \"beskedsystem\";

$ins = \"INSERT INTO beskedsystem (besked, dato, navn) VALUES(\'$besked\',\'$dato\',\'$navn\')\";

$db = mysql_connect (\"localhost\", \"root\");
print (\"Tilsluttet til host!\");
print \"<br>\";

mysql_select_db( $databasenavn , $db );

if (!mysql_query($ins, $db)) {
print \"Der kunne ikke insættes oplysninger i databasen :-(\";
exit();
}

$result = mysql_query(\"SELECT * FROM beskedsystem\",$db);
printf(\"Navn: %s<br>\\n\", mysql_result($result,0,\"navn\"));
printf(\"Dato: %s<br>\\n\", mysql_result($result,0,\"dato\"));

?> 

På forhånd tak for hjælpen
Avatar billede jd Nybegynder
29. august 2000 - 21:35 #1
er det ikke fordi du ikke kører $ins? -du har kun en if-sætning der tjekker...
Hvis du nu skifter dette:

if (!mysql_query($ins, $db)) {
print \"Der kunne ikke insættes oplysninger i databasen :-(\";
exit();
}

ud med dette:

$query = mysql_query($ins) or die (mysql_error());
if (!$query) {
print \"Der kunne ikke insættes oplysninger i databasen :-(\";
exit();
}

-bare en idé...

/Jon@z
Avatar billede steffen Nybegynder
29. august 2000 - 21:36 #2
Er det en tilfældighed, eller har du virkeligt kaldt både din database og din tabel for \"beskedsystem\"?
Avatar billede doeleman Nybegynder
29. august 2000 - 21:38 #3
Det er lidt lettere at debugge, hvis du får nogle fejlbeskeder!

Skriv f.eks.:
$db = mysql_connect(\"localhost\", \"root\") or die(mysql_error());
if ($db) {
  print \"Tilsluttet til host!<br>\";
}

og ret ligeledes
mysql_select_db($databasenavn, $db) or die(mysql_error());
og
mysql_query(.....) or die(mysql_error());

På den måde får du nogle fejlbeskeder, der måske kan give dig et hint om, hvad der er galt.
Avatar billede chris18 Nybegynder
30. august 2000 - 11:06 #4
Tak for hjælpen, nu fungerer det, jeg skiftede if-sætningen ud med det foreslåede. Men fejlen var faktisk at jeg havde skrevet det forkerte databasenavn som steffen kommenterede, hvor dum kan man være :-)
Avatar billede steffen Nybegynder
30. august 2000 - 17:34 #5
Kun med hjernen ser man rigtigt, det vigtige er skjult for øjet .. eller hvordan det nu var ham der prinsen sagde :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester