Recuperer l'identifiant du dernier enregistrement

Achille32 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous,
je voudrais savoir comment récupérer l'identifiant du dernier enregistrement d'une table. En effet je compte incrémenter cet identifiant pour avoir l'identifiant d'un nouvel enregistrement.
J'ai assayé avec
SELECT LAST_INSERT_ID mais celà me retourne Ressource #8
quelqu'un pourrais m'aider? merci
A voir également:

3 réponses

medboy94 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
il y'a une fonction qui s'appelle function LAST_INSERT_ID()
0
Achille32 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention  
 
C'est cette fonction que j'essayer d'utiliser, mais je n'y arrive pas vraiment

$recup = mysql_query(SELECT LAST_INSERT_ID FROM employe);
0
Achille32 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention  
 
quand je fais:
echo $recup; celà me retourne un truc du genre Ressource #8
0
zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   16
 
Il faut mettre
$recup = mysql_query("SELECT LAST_INSERT_ID()");
$row = mysql_fetch_row($recup);
echo $row[0];
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Tout d'abord ... l'extension mysql est considérée comme obsolète
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Je t'invite fortement à passer à PDO ou mysqli



Et juste pour info .. LAST INSERT ID ne s'utilise pas dans un SELECT. C'est une fonction de mysql qui s'utilise comme ceci :
https://www.php.net/manual/fr/function.mysql-insert-id.php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Impossible de se connecter : ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Le dernier ID inséré dans est le id %d\n", mysql_insert_id());

0
zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   16
 
@jordane45
Non LAST_INSERT_ID s'utilise avec select
voir https://dev.mysql.com/doc/refman/5.7/en/information-functions.html#function_last-insert-id
Par contre mysql_insert_id() c'est une fonction non pas de mysql mais de php
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention  
 
Oui c'est vrai j'ai été un peu rapide dans ma réponse.
C'est une fonction de l'extension mysql (qu'on utilise en php)

Par contre, pourquoi faire une requête SELECT ... lorsqu'une telle fonction existe....?
L'utilisation du SELECT LAST_INSERT_ID est principalement destinée à son utilisation en requête direct dans la bdd.
Lorsque l'on utilise un langage (comme le php) autant utiliser les fonctions dédiées.

Mais tu as bien fait de me corriger.
0