IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

last_insert_id [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé Avatar de esther60
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 107
    Par défaut last_insert_id
    bonjour je voudrais pourvoir effacer de ma table la dernière entrée ..
    et pour cela je pensais que je pouvais faire ce code:
    Code php :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php 
        $lid= "select last_insert_id()";
         $rep = mysql_query($lid); 
        $new="Delete FROM tache WHERE id=".$rep;
         mysql_query($new) or die ('ERREUR SQL ! :' .$new.'<br>' .mysql_error());
    ?>
    mais mon script ne marche pas et je ne sais pas du tout où est l'erreur ..et donc je voulais savoir si ce bout de code était juste...ne connaissant pas trés bien comment utilisé last_insert_id()..je voulais avoir votre avis!

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    le last_insert_id() n'est pas la solution à tout, elle n'est pas aussi magique que l'on peut croire , et elle à beaucoup de lacunes.

    dans ton cas il serait preferable de selectionner le dernier identifiant de ta table d'une autre manière.

    comme ceci par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT MAX(id) FROM tache;
    le last_insert_id() te retournera le dernier identifiant enregistré dans un champ auto_increment, oui mais de quel table? Aie! c'est là que l'utilité de last_insert_id() peut parfois s'arreter là!

  3. #3
    Membre confirmé Avatar de esther60
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 107
    Par défaut
    euh..je ne comprend pas d'où sort le MAX()???

  4. #4
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    tu veux selectionner le dernier identifiant non?

    le dernier identifiant inséré est toujours le nombre le plus grand

  5. #5
    Membre confirmé Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Par défaut
    Hum je connaissais pas last_insert_id()
    Perso j'utilise toujours mysql_insert_id() qui récupère le dernier id inséré dans ta table (ce que je t'ai dit hier d'ailleurs), comme ça après tu récupères avec un select la ligne de ta table correspondante, si ça peut t'être utile

  6. #6
    Membre confirmé Avatar de esther60
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 107
    Par défaut
    évidemment SphynXz...
    la dernière réponse est aussi vrai sinon... enfin je pense...

  7. #7
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    oui elle est vrai, mais c'est une fonction php

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème select LAST_INSERT_ID() renvoye 0
    Par azerty25 dans le forum Outils
    Réponses: 9
    Dernier message: 24/10/2006, 15h15
  2. DBI + last_insert_id
    Par Batou dans le forum SGBD
    Réponses: 1
    Dernier message: 26/07/2005, 10h55
  3. [JDBC]last_insert_id() avec PreparedStatement
    Par tidar dans le forum JDBC
    Réponses: 2
    Dernier message: 04/03/2005, 09h16
  4. LAST_INSERT_ID de MySQL
    Par Shogun2002 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/11/2003, 17h07
  5. A propos de Last_insert_id
    Par f-demu01 dans le forum Administration
    Réponses: 2
    Dernier message: 26/03/2003, 08h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo