Récupérer la valeur de l’autoincrément

Il peut vous arriver d’avoir besoin de récupérer la prochaine valeur utilisée par l’autoincrement au sein de vos applications, hors de question de récupérer la valeur de l’id, de lui ajouter un, de jouer le sioux en ajoutant une variable qui stockerait quelque part l’id en essayant de dupliquer l’autoincrément. Nul besoin de tout cela, MySQL peut nous retourner cette valeur comme un grand garçon !

Pour cela, il suffit d’utiliser la requête suivante :

 $query = db_query("SHOW TABLE STATUS LIKE '{node}'");

En remplaçant bien sûr {node} par le nom de votre table. Notez que les accolades sont propres à drupal, cela permet d’ajouter le préfix spécifié par l’utilisateur dans la configuration de la base de données au moment de l’installation.

Cette requête vous retourne un tableau différentes informations sur la table. Je vous invite à consulter la documentation de SHOW TABLE STATUS pour connaître les champs retournés.
Il ne vous reste plus qu’à stocker votre valeur dans une variable pour en faire ce que bon vous semble.

$row = db_fetch_array($query);
$next_id = $row['Auto_increment'];

En espérant que ça servira à certains d’entre vous.