Avatar billede Mik2000 Professor
31. oktober 2006 - 01:11 Der er 10 kommentarer og
2 løsninger

Indsæt i database

Hej

Jeg har et problem med indsættelse i tabel. Eksemplet herunder er forenklet.

Jeg har en tabel som følger:
id
nyhedtekst
link

Når jeg skal indsætte i den skal:
id gives automatisk (ikke et problem)
nyhedstekst skal udfyldes med tekst (ikke et problem)
link skal indeholde navn.php?id=ID_SOM_DEN_FÅR (PROBLEM)

PROBLEM:
Da den ikke er oprettet endnu, kan jeg ikke søge i databasen og se hvilken id som skal stå i link.

Det skal indsættes i en færdig java/PHP/mysql-menu som jeg ikke kan ændre på og kan derfor ikke lave noget om der.

Så hvad gør man i praksis?
... forstår du ikke spørgsmålet så uddyber jeg gerne. Håver du kan hjælpe
Avatar billede michaeltryl Seniormester
31. oktober 2006 - 01:31 #1
Efter hvad jeg forstår ved dit spørgsmål vil dette kunne klare opgaven.

Efter du har indsat id og nyhedstekst kan du hente sidste indsatte id fra databasen og updatere feltet link i den post

//henter sidste indsatte id fra databsen
$id = mysql_result(mysql_query("SELECT LAST_INSERT_ID()"),0);

$link ="skriv linket her?id=$id";
//opdatere felter
mysql_query("UPDATE tabel SET link = $link WHERE id='$id'") or die(mysql_error());
Avatar billede coderdk Praktikant
31. oktober 2006 - 01:41 #2
lettere med

$id = mysql_insert_id();

lige efter indsættelse :D
Avatar billede jakobdo Ekspert
31. oktober 2006 - 07:50 #3
Men, hvorfor gemme LINK som navn.php?id=SAMME ID SOM DU JO HAR I ID FELTET?
Hvorfor ikke bare droppe link og så genere link når du trækker det ud som:

echo '<a href="navn.php?id=' . $row['id'] . '">Link</a>';
Avatar billede michaeltryl Seniormester
31. oktober 2006 - 07:57 #4
Det er klart nemmere at gøre som jakobdo skriver
Avatar billede jakobdo Ekspert
31. oktober 2006 - 08:19 #5
Man slipper for et felt i databasen, og skal hellere ikke lave et ekstra kald for at opdatere efter indsættelse.
Avatar billede Mik2000 Professor
31. oktober 2006 - 14:46 #6
Hej
Vil også gøre det normalt. Problemet er at den menu jeg skal bruge (java/php/mysql) kan jeg ikke lave om i. Og den har et felt som hedder link som den benytter :)
Avatar billede jakobdo Ekspert
31. oktober 2006 - 14:49 #7
Fair nok! :o)
Avatar billede Mik2000 Professor
02. november 2006 - 18:29 #8
Husk at ligge svar

Bruger michaeltryl's forklaring og delvist coderdk kode

Så evt en deling?
Hvad siger I?
Avatar billede coderdk Praktikant
02. november 2006 - 18:31 #9
(c:
Avatar billede michaeltryl Seniormester
02. november 2006 - 18:32 #10
svar
Avatar billede michaeltryl Seniormester
02. november 2006 - 18:33 #11
ups det skulle have været et svar
Avatar billede Mik2000 Professor
09. november 2006 - 19:22 #12
Tak for hjælpen :)
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