Dernier ID inseré en PHP

Résolu/Fermé
amine_marc Messages postés 256 Date d'inscription dimanche 21 février 2010 Statut Membre Dernière intervention 11 avril 2016 - 15 août 2010 à 20:12
amine_marc Messages postés 256 Date d'inscription dimanche 21 février 2010 Statut Membre Dernière intervention 11 avril 2016 - 16 août 2010 à 03:50
Bonjour,

Je veux une fonction PHP qui permet d'augmenter un identifiant (numérique) basée sur le dernier id inséré. J'ai trouvé deux fonctions, mais ça marche pas, sont 1/ "last_insert_id()" et "mysql_insert_id()".
Est ce qu'il y a une autre fonction?! veuillez me répondre.
A voir également:

2 réponses

Pourquoi ne pas utiliser une requête SQL plutôt? Php c'est bien mais c'est pas un langage de bases de données, il suffit de faire une requête pour obtenir l'id le plus haut de la table et de l'incrémenter, n'est ce pas plus simple?

SELECT id where GREATEST(id)
La référence du manuel mysql sur GREATEST() anciennement MAX(qui reste bon pour la plupart des autres langages sql comme oracle):
http://dev.mysql.com/doc/refman/5.0/fr/comparison-operators.html

Et dans le cas d'obtenir la dernière requête effectuée il y a risque d'erreur, si la dernière ID insérée n'est pas la plus haute(rien n'empêche d'insérer l'id 0, 10 ou 25 si elle est précédé ment supprimée, il n'y a donc aucune garantie d'avoir l'identifiant numérique les plus élevé) il y a donc une erreur.
0
amine_marc Messages postés 256 Date d'inscription dimanche 21 février 2010 Statut Membre Dernière intervention 11 avril 2016 2
16 août 2010 à 03:50
merci bcp pour ces infos;
j'ai résolu le pb à l'aide d'une autre requête:

$req="SELECT MAX(id) FROM clients";
$code=mysql_query($req);
$MAX_ID= mysql_fetch_array($code);

$derner_id=$MAX_ID[0];
0