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

Langage PHP Discussion :

Last insert id


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Last insert id
    Bonjour à tous,

    Je souhaites utiliser le last insert id mais en cherchant un peu sur internet je n'arrive pas à comprendre son fonctionnement....

    J'ai crée deux requetes, la premiere "user" qui met des infos sur l'utilisateur et la seconde "droit" qui lui attribue des droits.

    J'aimerais utiliser last insert id pour récuperer le nouvel id_user pour le mettre dans la table "droit" en clé secondaire....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $sql = 'INSERT INTO user VALUES("", "'.mysql_escape_string(htmlspecialchars($_POST['user'])).'", "'.date("Y-m-d").'")';
     
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
     
     
     
    $sql = 'INSERT INTO droit VALUES("", "'.mysql_escape_string(htmlspecialchars($_POST['droit1'])).'","'.mysql_escape_string(htmlspecialchars($_POST['id_user'])).'" )';
     
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    Si quelqu'un pouvait m'aider? merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1- tu utilises encore mysql_ ?? (obsolète)

    Cette extension était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0.
    2- tu n'as pas trouvé la DOC sur last insert id : mysql_insert_id() ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql = 'INSERT INTO user VALUES("", "'.mysql_escape_string($_POST['user']).'", "'.date("Y-m-d").'")';
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
     
    $new_user_id = mysql_insert_id();
     
    $sql = 'INSERT INTO droit VALUES("", "'.mysql_escape_string($_POST['droit1']).'","'.mysql_escape_string($new_user_id).'" )';
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    Remarque :

    • on N'utilise PAS htmlspecialchars() pour l'enregistrement en BDD (d'autant mysql_escape_string s'en charge)
    • on l'utilise pour l'affichage dans la page.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Last insert id
    Oui j'utilise encore mysql et non j'avais pas trouvé je suis resté bloqué sur last insert id....

    Super merci ça marche et c'était pas très compliqué!

    Je vais modifier desuite les htmlspecialchars par mysql_escape_string.

    Bonne journée et encore MERCI!

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

Discussions similaires

  1. LAST INSERT ID (Ibatis)
    Par aya02 dans le forum Persistance des données
    Réponses: 1
    Dernier message: 26/02/2010, 12h12
  2. Last insert ID
    Par olibara dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 04/08/2009, 08h43
  3. Gridview récupérer la page et la ligne du last insert
    Par LhIaScZkTer dans le forum ASP.NET
    Réponses: 1
    Dernier message: 19/02/2008, 11h01
  4. [mysql] last insert
    Par colooo dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/07/2006, 11h43
  5. [V9] "last insert id" ?
    Par qi130 dans le forum Oracle
    Réponses: 9
    Dernier message: 18/12/2005, 14h42

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