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 :

Comment insérer avec un auto_increment ? [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de razorlok
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 211
    Par défaut Comment insérer avec un auto_increment ?
    Bonjour,

    1ere question :

    Je dois mettre en place une requête d'insertion sur une table ayant son identifiant auto incrémenté.
    Je ne sais pas trop comment m'y prendre, comment remplir values ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req1 = mysql_query ("insert into forme (for_num) values (' ') or die ("erreur requete 1");
    2eme question :

    Les autres champs de ma table ne doivent pas être remplis à la 1ere insertion, le but étant de créer un identifiant, je leur ai donné la valeur "null", dois-je les mentionner dans ma requête d'insertion ou ne pas les mettre du tout, comme plus haut ?

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Bonjour,

    A quoi sert la requête INSERT si tu ne mets aucune valeur dans les champs ????

  3. #3
    Membre confirmé Avatar de razorlok
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 211
    Par défaut
    Les champs seront complétés plus tard, au fur et a mesure, mais je dois créer un identifiant car d'autres tables en dépendent.

  4. #4
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Si d'autres tables en dépendent , ne peux tu pas envoyer des champs et récupérer l'id avec mysql_insert_id() puis t'occupper des autres tables ensuite ?

  5. #5
    Membre confirmé Avatar de razorlok
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 211
    Par défaut
    Ca doit être possible, mais débutant en php, je tâtonne un peu.

    Ca doit donner quelque chose dans ce genre je présume :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    mysql_query("insert into controle (ctrl_num, dos_num, for_num, fon_num, ctrl_controleur, ctrl_date, ctrl_commentaire)
    	values ('$_POST[ctrl_num]','$_POST[dos_num]','$_POST[for_num]','$_POST[fon_num]','$_POST[ctrl_controleur]','$_POST[ctrl_date]',
    	'$_POST[ctrl_commentaire]')",$cnx) or die(mysql_error());
     
    $resultat=(mysql_insert_id(forme));

  6. #6
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 27
    Par défaut
    Bonjour,

    Je pense qu'il faut faire les choses dans cet ordre:

    Creer une nouvelle "forme" vide ->

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req1 = mysql_query ("insert into forme () values ()") or die ("erreur requete 1");
    (Par contre, si des champs ne peuvent pas etre null ca ne marchera pas).

    Recuperer l'id de cette forme.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $formeId = mysql_insert_id();
    Faire le reste sachant que $formeId contient l'id de ta forme vide.

    En esperant que ca suffise.

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

Discussions similaires

  1. [EasyPHP] comment insérer son trigger avec EasyPHP
    Par kate59 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 15/06/2008, 18h09
  2. Réponses: 2
    Dernier message: 06/05/2008, 10h52
  3. [MySQL] Comment insérer 6 lignes en une fois dans une base mysql avec du PHP ?
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 10/02/2008, 14h39
  4. [PROB] Comment insérer un rollover avec son
    Par cityhentai dans le forum Flash
    Réponses: 3
    Dernier message: 15/05/2007, 09h55
  5. comment insérer une ligne avec CFile::Write
    Par gbardy dans le forum MFC
    Réponses: 2
    Dernier message: 10/08/2006, 10h19

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