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 :

relation père fils formulaire long -lastInsertId


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2007
    Messages : 176
    Points : 75
    Points
    75
    Par défaut relation père fils formulaire long -lastInsertId
    Bonjour

    Je developpe une application
    avec un formulaire qui est long contient beaucoup de champs
    j'ai une entete : dans un ID PERE
    et du détails danc des tables fils
    dans mon formulaire je crée mon entete (je fait un submit)
    ensuite je revien vers le formulaire pour insere le détails pour l'entete que je vien de crée
    Grace a votre aide je sais que je récupèr le dernier ID crée avec la fonction :
    lastInertId();
    mais comme je fait un submit ,je ne sais pas comment faire pour récupere l’entête a nouveau et insérer le détails

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Travaille avec un seul fichier PHP et des conditions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if formulaire pere soumis {
         insertion pere
         affichage formulaire detail
    }
    elseif formulaire detail soumis {
          insertion fils    
    }
    else {
           affichage formulaire pere   
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2007
    Messages : 176
    Points : 75
    Points
    75
    Par défaut
    Peut etre que je ne suis pas claire,donc je reprend :

    Voila:
    J ai un formulaire avec des champs que je remplis
    je fait le submit du formulaire
    je veux récuperer last inserted id
    afin de pouvoir réutiliser cette variable .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    from:
    <td> ID facture: <?php echo ?></td>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $id = $bdd->lastInsertId();

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Le récupérer d'où pour le réutiliser où ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2007
    Messages : 176
    Points : 75
    Points
    75
    Par défaut
    Formulaire 1 :dp_fr.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php 
     
    require("header.php"); 
    require("db.php");
    include 't_dpFr.php';
    ?>
    <form id="form1" name="form1" method="post" action="dp_fr.php">
    Formulaire2 :
    un script php : t_dpFr.php

    au niveau de mon script t_dpFr.php j'ai une fonction insert (qui m insère les données saisiaie dans le formulaire) dp_fr.php
    danc suite a l insertion je récupère : lastInsertedId () que je voudrais récupere comme variable au niveau de mon formulaire dp_fr.php

    Ce formulaire dp_fr.php contients plusieurs submits ,et je voudrais récupere le lastinsertedid afin de le renvoyer comme un paramètre car je n ai pas d autre moyen de le récupere .

    J espère que je suis claire

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ajoute un champ "hidden" dans ton formulaire avec la valeur de l'id.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2007
    Messages : 176
    Points : 75
    Points
    75
    Par défaut
    j ai ajouter un champ hidden au niveau du formulaire : dp_fr.php
    <input type="hidden" name="idpatrimoine" value= "<?php echo $idPatrimoine ?>" >
    Voici le message d'erreur que j oblien

    dans le formulaire t_dpFr.php
    ( ! ) Notice: Undefined variable: idPatrimoine in C:\wamp\www\patrimoine\dp_fr.php on line 37 Call Stack #TimeMemoryFunctionLocation 10.0016419928{main}( )..\dp_fr.php:0 " >
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    function insert_patrimoine ($bdd,$idAgent,$typeDec,$dateDec,$valid,$iduser,$autreB,$autreD){
     
    $d = date("Y-m-d",strtotime($dateDec));
    $select = $bdd -> query("SELECT * FROM patrimoine where idAgent= '$idAgent' and typeDec= '$typeDec' and dateDec= '$d'");
    		//var_dump($select); 
     
    // On indique que nous utiliserons les résultats en tant qu'objet
    	$select -> setFetchMode(PDO::FETCH_OBJ);
    	// Traitement d'un seul résultat
    	$enregistrement = $select -> fetch();
     
    	// On test si la variable $enregistrement, au cas
    	// ou elle serait vide.
    	if ($enregistrement) {
    		echo '<h1> La DP existe déja dans la base</h1>';
    	} else {
     
    		$insertDP = $bdd -> prepare('INSERT INTO patrimoine VALUES ( NULL,:idAgent,:typeDec,:dateDec,:valid,:iduser,:autreB,:autreD)');
     
    				try {
    					// On rempli les paramètres
    					$insertDP -> bindParam(':idAgent', $idAgent, PDO::PARAM_INT);
    					$insertDP -> bindParam(':typeDec', $typeDec, PDO::PARAM_INT);
    					$insertDP -> bindValue(':dateDec', date("Y-m-d",strtotime($dateDec)));
    					$insertDP -> bindParam(':valid', $valid, PDO::PARAM_INT);
    					$insertDP -> bindParam(':iduser', $iduser, PDO::PARAM_INT);
    					$insertDP -> bindParam(':autreB', $autreB, PDO::PARAM_STR);
    					$insertDP -> bindParam(':autreD', $autreD, PDO::PARAM_STR);
    					$success = $insertDP -> execute();
    					$idp = $bdd->lastInsertId();
     
    					if ($success) {
    						echo "Déclaration créer avec id".$idp." \r\n";
    						$idPatrimoine=$idp;
    						echo '<br>';
    					}
    				} catch( Exception $e ) {
    					echo 'Erreur de requète : insert_p', $e -> getMessage();
    				}
    	}
    }

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    $idPatrimoine n'existe pas a l'exterieur de ta fonction.

    Ajoute à la fin de la fonction
    et ensuite dans ton appel à la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $idPatrimoine = insert_patrimoine(.........);

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Mars 2007
    Messages : 176
    Points : 75
    Points
    75
    Par défaut
    Merci sabotage pour ton aid et suivi, j ai réglé mon problème .

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

Discussions similaires

  1. Relation pères/fils dans un formulaire
    Par petitpom dans le forum IHM
    Réponses: 4
    Dernier message: 11/07/2012, 09h25
  2. [MySQL] Relation père-fils en PHP et MySQL
    Par nabians dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 18/07/2007, 11h02
  3. Formulaire sous-formulaire: relation père fils
    Par Zinemon dans le forum IHM
    Réponses: 5
    Dernier message: 27/06/2007, 10h14
  4. Table avec lignes ayant une relation "père-fils"
    Par the java lover dans le forum Windows Forms
    Réponses: 7
    Dernier message: 02/04/2007, 11h20
  5. [pthread] relation père - fils ?
    Par jedimind dans le forum C
    Réponses: 3
    Dernier message: 14/11/2005, 11h18

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