/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
indsætte data i mysql
Fra : Søren


Dato : 15-06-02 23:18

Jeg skal have data ind i en MySQL tabel med PHP og har nedenstående, som jeg
hele tiden får fejlmelding på. Jeg har været inde og se artiklerne på
webcafe.dk og læst i en lærebog men synes, at jeg har gjort det rigtig nok.
Måske har jeg stirret mig blind på et eller andet så jeg håber, at der er én
af jer, der kan se min fejl.

Søren

//insert data
$tabel = "kontakt";
$id = "5";
$link = "http://www.xbase.dk/email.php";
$tekst = "Kontakt pr. e-mail";
$insertSQL = "insert into $tabel set
id = '$id',
link = '$link',
tekst = '$tekst'";
mysql_query($insertSQL);



 
 
Per Thomsen (15-06-2002)
Kommentar
Fra : Per Thomsen


Dato : 15-06-02 23:29


"Søren" <sorenh@gmx.net> wrote in message
news:a2PO8.56965$N46.1825374@news010.worldonline.dk...
> Jeg skal have data ind i en MySQL tabel med PHP og har nedenstående, som
jeg
> hele tiden får fejlmelding på. Jeg har været inde og se artiklerne på

Hvilken fejlmelding?
Det er generelt altid en god idé at fortælle hvilken fejlmelding du får,
da det så bliver lidt nemmere at hjælpe dig.

>
> //insert data
> $tabel = "kontakt";
> $id = "5";
> $link = "http://www.xbase.dk/email.php";
> $tekst = "Kontakt pr. e-mail";
> $insertSQL = "insert into $tabel set
> id = '$id',
> link = '$link',
> tekst = '$tekst'";
> mysql_query($insertSQL);
>

Da du har læst, artiklerne på webcafe, går jeg self. ud fra at
det her er klippet ud af din kode, og at du inden du når hertil
har fået oprettet en forbindelse til databasen, og valgt en
database, men for lige at være på den sikre side:
Har du oprettet en forbindelse til mysql og valgt en database?

MVH Per Thomsen,
http://www.pert.dk/





Jakob Møbjerg Nielse~ (16-06-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 16-06-02 10:45

> $id = "5";

$id = 5;

> $insertSQL = "insert into $tabel set
> id = '$id',

id = $id

Jeg går ud fra at id feltet i databasen er et tal.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Søren (16-06-2002)
Kommentar
Fra : Søren


Dato : 16-06-02 11:10

Jeg foretog ændringen omkring id, da det id, som skal indsættes, rigtig nok
er et tal. Det kommer så til at se således ud:

//insert data
$tabel = "famkontakt";
$id = 5;
$link = "http://www.xbase.dk/email.php";
$tekst = "Kontakt pr. e-mail";
$insertSQL = "insert into $tabel set
id = $id,
link = '$link',
tekst = '$tekst'";
mysql_query($insertSQL);

men jeg får stadig den samme fejl melding, som siger:

Parse error: parse error, unexpected T_STRING in [url] on line 27

og linje 27 er linjen: $tabel = "famkontakt";

Søren






Jakob Møbjerg Nielse~ (16-06-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 16-06-02 11:17

> Parse error: parse error, unexpected T_STRING in [url] on line 27

Hvilken linje står der før linje 27?

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Søren (16-06-2002)
Kommentar
Fra : Søren


Dato : 16-06-02 11:29

"Jakob Møbjerg Nielsen" <jakob@dataloger.dk> skrev i en meddelelse
news:aehoj7$slo$1@sunsite.dk...
> > Parse error: parse error, unexpected T_STRING in [url] on line 27
>
> Hvilken linje står der før linje 27?

Her er den kode, der er før linje 27 som den er - kopieret direkte over...
Men så opdagede jeg at der jo manglede et " da der skal stå: primary key
(link))"; efter at have sat det ind og uploadet så funker det ...
Selvom jeg lige opdagede fejlen selv, så har I hjulpet alligevel så tak for
det.

//create table
$tabelSQL = "create table famkontakt (
id varchar(3) not null,
link varchar(75) not null,
tekst varchar(50) not null,
constraint famkontaktpk
primary key (link));
mysql_query($tabelSQL);

//insert data
$tabel = "famkontakt";
$id = 5;
$link = "http://www.xbase.dk/email.php";
$tekst = "Kontakt pr. e-mail";
$insertSQL = "insert into $tabel set
id = $id,
link = '$link',
tekst = '$tekst'";
mysql_query($insertSQL);



Jakob Møbjerg Nielse~ (16-06-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 16-06-02 11:39

> der skal stå: primary key (link))";

Netop. Når du får parse errors, og ikke kan se fejlen, er det altid en
god ide at kigge på linjerne før.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Jakob Møbjerg Nielse~ (16-06-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 16-06-02 11:41

> //create table
> $tabelSQL = "create table famkontakt (
> id varchar(3) not null,
> link varchar(75) not null,
> tekst varchar(50) not null,
> constraint famkontaktpk
> primary key (link));
> mysql_query($tabelSQL);

Forresten... det er vel ikke nødvendigt at køre dette SQL hver gang?
Hvis det er, så bør du skrive:

$tabelSQL = "create table if not exists famkontakt (
....

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Søren (16-06-2002)
Kommentar
Fra : Søren


Dato : 16-06-02 13:48

"Jakob Møbjerg Nielsen" <jakob@dataloger.dk> skrev i en meddelelse
news:aehq03$30c$1@sunsite.dk...
> > //create table
> > $tabelSQL = "create table famkontakt (
> > id varchar(3) not null,
> > link varchar(75) not null,
> > tekst varchar(50) not null,
> > constraint famkontaktpk
> > primary key (link));
> > mysql_query($tabelSQL);
>
> Forresten... det er vel ikke nødvendigt at køre dette SQL hver gang?
> Hvis det er, så bør du skrive:
>
> $tabelSQL = "create table if not exists famkontakt (

Jeg kører den ikke hver gang, men havde ikke opstillet tabellen rigtig i
første omgang, så derfor blev den slettet og en ny oprettet. Straks efter
den nye er oprettet smides der data ind i den.

Søren



-Martin- (16-06-2002)
Kommentar
Fra : -Martin-


Dato : 16-06-02 15:19

On Sun, 16 Jun 2002 00:17:41 +0200, "Søren" <sorenh@gmx.net> wrote:

>Jeg skal have data ind i en MySQL tabel med PHP og har nedenstående, som jeg
>hele tiden får fejlmelding på. Jeg har været inde og se artiklerne på
>webcafe.dk og læst i en lærebog men synes, at jeg har gjort det rigtig nok.
>Måske har jeg stirret mig blind på et eller andet så jeg håber, at der er én
>af jer, der kan se min fejl.
>
>Søren
>
>//insert data
>$tabel = "kontakt";
>$id = "5";
>$link = "http://www.xbase.dk/email.php";
>$tekst = "Kontakt pr. e-mail";
>$insertSQL = "insert into $tabel set
> id = '$id',
> link = '$link',
> tekst = '$tekst'";
>mysql_query($insertSQL);

Hvis du kigger i manualen så finder du ud af at man kun sætter
variabler ved en UPDATE, og som jeg kan se skal du lave en helt ny
række ... Så derfor så ska du bruge VALUES (se mit eks.)


mysql_query("INSERT INTO tabel VALUES('$id','$link','$tekst')") OR DIE
(mysql_error());



Jakob Møbjerg Nielse~ (16-06-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 16-06-02 15:30

> Hvis du kigger i manualen så finder du ud af at man kun sætter
> variabler ved en UPDATE,

Niks

http://www.mysql.com/doc/I/N/INSERT.html:

INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name
SET col_name=expression, col_name=expression, ...

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
| -- Terry Pratchett, Reaper Man



Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408852
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste