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

Requêtes MySQL Discussion :

Insertion par étape dans une base


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut Insertion par étape dans une base
    Bonjour,

    Je voudrais savoir s'il est possible de faire une insertion par étape?

    Exemple un form avec 5 champs a inseré dans une base mais mon fichier php insere d'abord le champ 1 une fois fait insere le champ 2 etc...


    Merci

  2. #2
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    tu peux être plus précis STP?
    pourquoi veux-tu faire ça? Donne un exemple STP

    - tu fais tes 5 requetes indépendantes dans ton code php que tu exécutes successivement après avoir vérifié que la précédente valeur est bien insérée....mais je vois pas l'intérêt
    - tu utilises le moteur innodb qui te permet de faire des rollback et de ne pas valider tes insertions précédentes en cas de souci.

    plus d'infos STP pour réponse plus précise

  3. #3
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par gerald2545
    tu peux être plus précis STP?
    pourquoi veux-tu faire ça? Donne un exemple STP

    - tu fais tes 5 requetes indépendantes dans ton code php que tu exécutes successivement après avoir vérifié que la précédente valeur est bien insérée....mais je vois pas l'intérêt
    - tu utilises le moteur innodb qui te permet de faire des rollback et de ne pas valider tes insertions précédentes en cas de souci.

    plus d'infos STP pour réponse plus précise

    Bonjour

    Ma raison est la suivante:

    J'ai une formulaire avec 6 lignes dans ses 6 lignes reviennent à chaque fois champs "nom", "prenom","adresse", "mail".

    Donc à partir de là j'ai créer une TABLE avec comme champs:
    nom_1, nom_2, nom_3 etc pour tout les champs se qui me donne dans ma TABLE 24 CHAMPS

    Et donc a chaque validation du formulaire j'ai une ligne de 24 champs
    mais je voudrais n'en avoir que 4 et comme je ne sait pas comment faire je me suis dit simplement que en créant 6 insertion de 4 champs au lieux de 1 de 24 cela réglerais mon problème (chose important les 6 ligne ne snt pas obligatoirement encodé)

    Voilà mais je ne sais pas si je suis claire ???

  4. #4
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    re,
    et bien en fait je ne comprends pas ton problème :
    pourquoi vouloir faire 6 insertions de 4 champs plutôt qu'une insertion de 24?

  5. #5
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par gerald2545
    re,
    et bien en fait je ne comprends pas ton problème :
    pourquoi vouloir faire 6 insertions de 4 champs plutôt qu'une insertion de 24?
    Salut,

    ET bien d'abord parce qu'il est plus facile de lire une ligne de 4 champs, plutôt que 24
    en second c'est plus propre.
    Un tableau récpere les champs (même les champs vide)
    et il est impossible de suprimer certain champs et pas d'autre dans la base

    EXEMPLE:
    Un enregistrement comprend 3 ligne (donc 12 champs) cela fait dans ma TABLE une ligne de 24 champs donc 12 de vide et comme c'est uneseule ligne je ne sais pas suprimer les 12 champs vide sans suprimer toute la ligne

    Merci

  6. #6
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Salut,

    ET bien d'abord parce qu'il est plus facile de lire une ligne de 4 champs, plutôt que 24
    en second c'est plus propre.
    Pour finir un tableau récupere les champs (même les champs vide)
    et il est impossible de suprimer certain champs et pas d'autre dans la base

    EXEMPLE:
    Un enregistrement qui comprendrait 3 lignes (donc 12 champs) cela fait dans ma TABLE une ligne de 24 champs donc 12 de vide et comme c'est une seule ligne je ne sais pas suprimer les 12 champs vide sans suprimer toute la ligne

    Ou alors me dire s'il est possible qu'un champs de ma TABLE "nom" par exemple
    puisse récupérer les valeurs des champs nom_1, nom_2, nom_3, nom_4, nom_5, nom_6.


    D'avance merci

    Merci

  7. #7
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Merci de ne pas poster plusieurs sujets concernant le même problème

    Par ailleurs une base de données n'est pas une simple copie de ce qui est saisi dans les formulaires de ton application. Elle a son organisation propre qui obéit à des règles précises (en général lorsqu'on voit des colonnes nom1, nom2 ... nom30 c'est qu'il y a un problème).

    Si tu décrivais le contexte de ton application et ce que tu veux faire exactement, on y verrait plus clair...

  8. #8
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par Maximilian
    Merci de ne pas poster plusieurs sujets concernant le même problème

    Par ailleurs une base de données n'est pas une simple copie de ce qui est saisi dans les formulaires de ton application. Elle a son organisation propre qui obéit à des règles précises (en général lorsqu'on voit des colonnes nom1, nom2 ... nom30 c'est qu'il y a un problème).

    Si tu décrivais le contexte de ton application et ce que tu veux faire exactement, on y verrait plus clair...
    Bonjour,

    J'ai un formulaire de (prestations) il comprend 6 lignes et 5 champs, dans les 6 lignes reviennent les même champs.
    nom, prenom, adresse, etc... dans les six lignes j'ai donc créer une table qui reprend ls champs en question (mais je suis pas certain que c'est la meilleur méthode )

    Il faut également savoir que les 6 lignes ne doivent pas être obligatoirement remplie.

    Et un tableau reprend les données de la TABLE.

    Je ne me comprend pas toujours j'espere que toi tu ma comprid ?

    Merci

  9. #9
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Mais pourquoi 6 personnes et pas 7, 8 ou 20 ? Qu'est-ce que ça représente exactement ?

    On ne peut pas t'aider avec une description aussi vague du problème...

  10. #10
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par Maximilian
    Mais pourquoi 6 personnes et pas 7, 8 ou 20 ? Qu'est-ce que ça représente exactement ?

    On ne peut pas t'aider avec une description aussi vague du problème...
    Hello

    Chaque ligne represente un RDV (dans une ligne: 5 champs nom, prenom,adresse, remarques,date.)


    6 lignes parce que c'est le nombre max de rdv par jour , mais il est possible que certain rdv tombe pendant le journée volà pourquoi les 6 ligne ne son pas remplie obligatoirement, par contre il y à un encodage par jour.

    En gros je voudrais que les champs "nom_1","nom_2","nom_3","nom_4","nom_5",nom_6" de mon formulaire s'enregistre dans un champs de ma TABLE par exemple le champs "nom" (pour être original ) et la même chose avec les autres champs de mon formulaire.

    Merci

  11. #11
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    et le jour où on revient aux 40 heures, et qu'il pourra y avoir 7 RDV dans la journée, ta base ne sera plus exploitable
    pourquoi ne fais tu pas plutôt :
    une table client : id_client|nom|prenom|adresse
    une table professionnel : id_professionnel|nom|prenom
    une table rdv : id_client|id_professionnel|remarque|date

    j'imagine que les personnes qui prennent RDV reviennent régulièrement donc c'est mieux de les mettre dans une table à part.
    pour chaque personne qui prend RDV, tu insères une ligne dans la table rdv en insérant les id des clients et du professionnel qui les reçoit....
    qu'en penses tu?

  12. #12
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par gerald2545
    et le jour où on revient aux 40 heures, et qu'il pourra y avoir 7 RDV dans la journée, ta base ne sera plus exploitable
    pourquoi ne fais tu pas plutôt :
    une table client : id_client|nom|prenom|adresse
    une table professionnel : id_professionnel|nom|prenom
    une table rdv : id_client|id_professionnel|remarque|date

    j'imagine que les personnes qui prennent RDV reviennent régulièrement donc c'est mieux de les mettre dans une table à part.
    pour chaque personne qui prend RDV, tu insères une ligne dans la table rdv en insérant les id des clients et du professionnel qui les reçoit....
    qu'en penses tu?
    Les RDV son fait pas des technicien, (raccordement internet) les encodages son juste des rapport de service.
    Mais j'ai trouvé un méthode qui des faire plusieurs INSERT
    Mon code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    include "connect/fc-phpconnect.php";
     
    $sql = "INSERT INTO test (nom, prenom, tel) VALUES ('" .$nom_1. "','".$prenom_1."','" .$tel_1."')";
    mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error()); 
    $sql = "INSERT INTO test (nom, prenom, tel) VALUES ('" .$nom_2. "','".$prenom_2."','" .$tel_2."')";
    mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
    $sql = "INSERT INTO test (nom, prenom, tel) VALUES ('" .$nom_3. "','".$prenom_3."','" .$tel_3."')";
    mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error()); 
     
    echo 'merci beaucoup, vos infos ont été enregistrées.'; 
    mysql_close();
    Mais il me reste encore un soucis (enfin 2)
    Dans l'exemple ci-dessus le TUPLE de mom CHAMPS tel reste vide à chaque requête ????

    Et je voudrais aussi savoir comment il faudrais faire pour que seul les champs rempli s'enregistre dans ma TABLE ?

    D'avance merci

  13. #13
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    test l'existence de tes variables avant d'exécuter l'insertion....

  14. #14
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par gerald2545
    test l'existence de tes variables avant d'exécuter l'insertion....
    Salut

    <form method="POST" action="validation.php">
    <p>nom;<input type="text" name="nom_1" size="20" />;
    prenom<input type="text" name="prenom_1" size="20" />;
    Tel:<input type="text" name="tel_1" size="20" /></p>
    <p>nom;<input type="text" name="nom_2" size="20" />;
    prenom<input type="text" name="prenom_2" size="20" />;
    Tel:<input type="text" name="tel_2" size="20" /></p>
    <p>nom;<input type="text" name="nom_3" size="20" />;
    prenom<input type="text" name="prenom_3" size="20" />;
    Tel:<input type="text" name="tel_3" size="20" /></p>
    <p><input type="submit" value="Envoyer" name="B1" />
    <input type="reset" value="Rétablir" name="B2" /></p>
    </form>
    Mes variables son bien là !

    Tu voudrais bien me donné un exemple STP

    Merci

  15. #15
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    oui, c'est sûr elles sont dans ton formulaire....jusque là tout va bien
    en fait ce dont je te parlais c'était après envoi de ton formulaire.
    Comment récupères-tu tes variables? tu es en php?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (defined($_POST['nom_1'])
    {
    insertion dans base
    }
    else
    {
    echo "chômage technique aujourd'hui";
    }

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

Discussions similaires

  1. Recherche par mot clé dans une base de donnée
    Par sihamsisim dans le forum ASP
    Réponses: 1
    Dernier message: 24/04/2008, 20h59
  2. [AJAX] Insertion de données (formulaire) dans une base Access : ASP JavaScript
    Par polothentik dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 09/04/2008, 11h19
  3. [MySQL] problème d'insertion des caractères arabe dans une base mysql
    Par sasaas dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/03/2008, 11h56
  4. Insertion des fichiers pdf dans une base oracle
    Par arezki76 dans le forum SQL
    Réponses: 2
    Dernier message: 20/07/2007, 16h39
  5. [Conception] insertion sql en php, dans une base de donnée ?
    Par artotal dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 24/10/2005, 04h34

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