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 :

Faire afficher le ID(clé primaire auto-increm) d'une commande


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2016
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2016
    Messages : 24
    Points : 5
    Points
    5
    Par défaut Faire afficher le ID(clé primaire auto-increm) d'une commande
    Par le biais d'un simple formulaire rempli par l'utilisateur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <form method="post" action="fichecommande.php"
    enctype="multipart/form-data"><table >
            <tr>
                <th valign="top">Nom du Professeur:</th>
                <td><input type="text"   name="nomprof" /></td>
                <td></td>
            </tr>
            <tr>
                <th valign="top">Nom du Materiel:</th>
                <td><input type="text" name="nommateriel" /></td>
             </tr></table></form>
            </tr>
    On récupère les données puis je l'insère dans ma BD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $nommateriel=$_POST["nommateriel"];$Nomprof=$_POST['nomprof'];
     
     
    $req="INSERT INTO COMMANDE_BESOIN(id_commandeb, NOM_MATERIEL,nom)VALUES( '','$nommateriel','$Nomprof')";
    $res = $conn->query($req);
     
     
    ?>
    et je les affiche dans ma page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <form method="post">
     
           <table> <tr>
                <th valign="top">Id Commande:</th>
                <td><?php
    <!--où je veux afficher le id commande--> ?> </td>
                <td></td>
            </tr>
    <tr>
                <th valign="top">Nom du Materiel:</th>
                <td><?=$nommateriel?> </td>
                <td></td>
            </tr>
            <tr>
                <th valign="top">Nom du Professeur:</th>
                <td><?=$Nomprof?> </td></td>
     
            </tr></table></form>
    voici et comme vous le voyez je voudrai afficher le id commande (ma clé primaire auto-incrémenté) dans cette fiche commande qui apparait à l'utilisateur
    comment faire ????????

  2. #2
    Membre actif Avatar de elcoyotos
    Homme Profil pro
    Amateur passionné
    Inscrit en
    Octobre 2006
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Amateur passionné

    Informations forums :
    Inscription : Octobre 2006
    Messages : 482
    Points : 294
    Points
    294
    Par défaut
    Bonjour,

    Juste après ta requete d'insertion écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $dernier_id = mysql_insert_id();
    Puis pour l'afficher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo 'Identifiant de la commande : '.$dernier_id; ?>
    Tu devrais passer à PDO pour tes requêtes SQL ...
    Car là, tu n'as aucune sécurité sur tes requêtes ...
    Écoute, sinon ta langue te perdra (proverbe Navajo)

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2016
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2016
    Messages : 24
    Points : 5
    Points
    5
    Par défaut
    c'est un projet que je vais terminer bientôt,et j'ai réalisé toute mes requêtes avec mysqli

    difficile de changer le tout :/

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2016
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2016
    Messages : 24
    Points : 5
    Points
    5
    Par défaut
    sinon ta requête est en mysql

    je la veux en mysqli ?????

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2016
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2016
    Messages : 24
    Points : 5
    Points
    5
    Par défaut
    Warning: mysqli_insert_id() expects exactly 1 parameter, 0 given in C:\wamp\www\gestionmat\signal.php on line 9
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php require_once("connection.php")?>
     
    <?php
    $idmateriel=$_POST["idmateriel"];$Nomprof=$_POST["nomprof"];
    $description=$_POST["description"];
     
    $req="INSERT INTO signal_defect(id_signal,	id_materiel,NOM,description)VALUES( '','$idmateriel','$Nomprof','$description')";
    $res = $conn->query($req);
    $dernier_id = mysqli_insert_id();
     
    ?>

  6. #6
    Membre régulier Avatar de eaglesnipe
    Homme Profil pro
    Ingénieur Etudes et Développement
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développement
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Points : 76
    Points
    76
    Par défaut
    Bonjour Hamzaviola,

    Pense à systématiquement te référer à la documentation officielle quand tu rencontres ce genre d'erreur : http://php.net/manual/fr/mysqli.insert-id.php
    Elles sont généralement très simple à résoudre.

    Dans ton cas, il suffit de passer la ressource mysqli créée (obtenue via ton appel à mysqli_connect()) en paramètres de la fonction.

    D'après ton exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $dernier_id = mysqli_insert_id($conn);

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/03/2009, 13h26
  2. Faire afficher progressivement du texte
    Par simone.51 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 26/07/2005, 12h28
  3. [Reports 6i] Faire afficher une alerte.
    Par macben dans le forum Reports
    Réponses: 3
    Dernier message: 15/02/2005, 11h47
  4. Création Clé primaire auto-incremente - Access 2000
    Par Didier100 dans le forum Bases de données
    Réponses: 3
    Dernier message: 19/10/2004, 20h30
  5. [VB.NET] [ADO.NET] Clef primaire auto incrémenté
    Par Guld dans le forum Accès aux données
    Réponses: 4
    Dernier message: 25/09/2004, 21h46

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