Avatar billede ahrensberg Nybegynder
01. september 2004 - 16:43 Der er 9 kommentarer og
1 løsning

MySQL-database i PHP

Hejza

Hvis man indsætter ny data i en MySQL database med et primært id-felt som har "auto_increment" (altså automatisk nummerering), kan man så efter man har indsat data med mysql_query("INSERT INTO... osv. osv. Så på en måde få at vide hvad id-feltet er blevet sat til?

F.eks. hvis man samtidig uploader et billede, og vil kalde det "id-navn.jpg"?
Avatar billede mjl Nybegynder
01. september 2004 - 16:44 #1
Du kan jo inden, tage det sidste ID nummer, og så lægge 1 til

Sidste nr. + 1
Avatar billede mjl Nybegynder
01. september 2004 - 16:46 #2
$find_sidste_id = mysql_query("SELECT id FROM tabel ORDER BY id DESC LIMIT 1");
while ($find_sidste_id_print = mysql_fetch_array($find_sidste_id)){
$idnummer = $find_sidste_id_print["id"]+1;
}
Avatar billede mjl Nybegynder
01. september 2004 - 16:47 #3
$idnummer vil så være lig med dit sidste id + 1
Avatar billede mjl Nybegynder
01. september 2004 - 16:48 #4
...altså det id, du sætter i DB'en næste gang - forstås! ;O)
Avatar billede fsconsult.dk Nybegynder
01. september 2004 - 16:56 #5
brug $lastinsertid = mysql_insert_id();

"SELECT id FROM tabel ORDER BY id DESC LIMIT 1" vil give problemer hvis der er flere der indsætter i databasen samtidigt, så vil du få den sidste indsatte, og ikke den som dit script netop har indsat.
Avatar billede fsconsult.dk Nybegynder
01. september 2004 - 16:56 #6
svar :-)
Avatar billede ahrensberg Nybegynder
01. september 2004 - 16:58 #7
Yup fandt det også lige, men takker for hjælpen! ;-) http://dk2.php.net/manual/en/function.mysql-insert-id.php
Avatar billede detox Nybegynder
01. september 2004 - 16:59 #8
I MySQL er det:

SELECT LAST_INSERT_ID() FROM tabel
Avatar billede ahrensberg Nybegynder
01. september 2004 - 17:01 #9
Takker Detox! Du får point under det andet spg!
Avatar billede detox Nybegynder
01. september 2004 - 17:02 #10
Selv tak.
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
Computerworld tilbyder specialiserede kurser i database-management

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