Is er een manier om de auto_increment (id) uit de db te halen? Dus zodat ik weet welk id er word gegeven aan de rij?
Na je insert query kan je dit gebruiken:

<?php
$last_id=mysql_insert_id();
?>
Andere manier:


<?php
$SQL = "SHOW
           TABLE STATUS
       FROM
           databaseName
       LIKE
           'tableName'";

$result = mysql_query($SQL);
$row = mysql_fetch_assoc($result);
$nextInsertId = $row['Auto_increment'];
?>
Thx micha dat is wat ik nodig had!
Mooizo :)
Ik zou toch echt voor de manier gaan van Robert..
Die van Robert is de beste optie, omdat het een ingebouwde functie is => minder problemen veroorzaken en het is korter.
query's kunnen mislukken. Functies niet(tenzij heel het script verrot is natuurlijk)
De oplossing van Robert is niet de beste omdat het een ingebouwde functie is, maar omdat de query van Micha volkomen onbetrouwbaar is!

Deze query vertelt je welk nummer er op dat moment wordt gebruikt, het zegt je niet of dat het nummer is dat je net met jouw INSERT-query hebt aangemaakt.

Wanneer er meerdere users gelijktijdig gegevens in de database wegschrijven, dan kan er tussen jouw INSERT- en SHOW-query nog zo maar een INSERT van iemand anders worden uitgevoerd. De SHOW levert dan het nummer op dat is toegekend aan het record van die andere gebruiker! En daar heb jij helemaal niets aan, tenzij je zit te wachten op een corrupte database.

Kortom, gebruik mysql_insert_id()

Reageren