Bonjour chers developpeur,
je viens vers vous pour obtenir votre aide...
je dois insérer dans deux tables differentes des données dans ma base de donnees.
j'utilise le modele mvc ...
j'ai crée trois dossiers : controlleur, requete et template
le formulaire se trouve dans le template
les requetes sont saisie le dossier requetes
le controleur executes les requetes
pour revenir a mon sujet :
1.dans le template jai creer mon formulaite je l'ai renommer boncommande.php le voici:
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158 <?php session_start(); require 'header.php'; ?> <div id="site_content"> <?php require 'left.php';?> <div class="content"> <h1>Bon de Commande d'un Client</h1> <div class="content_item"> <form class="form-horizontal" method="POST" action="../controleur/controleurBonCommande.php"> <fieldset> <!-- Premiere etape de l'enregistrement --> <div class="form-group"> <label class="col-md-4 control-label" for="datecommande">Date Commande</label><div class="col-md-4"> <input id="datecommande" name="datecommande" type="date" placeholder="Date de la Commande" class="form-control input-md" required=""> </div> </div> <div class="form-group"> <label class="col-md-4 control-label" for="lieulivraison">Lieu de Livraison</label> <div class="col-md-4"> <input id="lieulivraison" name="lieulivraison" type="text" placeholder="Lieu de Livraison de la Commande" class="form-control input-md" required=""> </div> </div> <!-- Fin Premiere etape de l'enregistrement --> <!-- Deuxieme etape de l'enregistrement --> <div class="form-group"> <label class="col-md-4 control-label" for="designation">Designation du Produit</label> <div class="col-md-4"> <input id="designation" name="designation" type="text" placeholder="Designation du produit" class="form-control input-md" required=""> </div> </div> <div class="form-group"> <label class="col-md-4 control-label" for="prixunitaire">Prix Unitaire</label> <div class="col-md-4"> <input id="prixunitaire" name="prixunitaire" type="text" placeholder="Prix Unitaire du produit" class="form-control input-md" required=""> </div> </div> <div class="form-group"> <label class="col-md-4 control-label" for="quantite">Quantite</label> <div class="col-md-4"> <input id="quantite" name="quantite" type="text" placeholder="Quantite du produit livré" class="form-control input-md" value="" onClick="afficheCout();"> </div> </div> <div class="form-group"> <label class="col-md-4 control-label" for="prixfournisseur">Prix Unitaire du Fournisseur</label> <div class="col-md-4"> <input id="prixfournisseur" name="prixfournisseur" type="text" placeholder="prix fournisseur" class="form-control input-md" required=""> </div> </div> <!--Fin Deuxieme etape de l'enregistrement --> <!--Troisieme etape de l'enregistrement --> <!-- Text input--> <div class="form-group"> <label class="col-md-4 control-label" for="modepaiement">Mode de Paiement</label> <input type="radio" name="modepaiement" value="Cash" onClick="afficheCash();">Paiement Cash <input type="radio" name="modepaiement" value="Credit" onClick="afficheCredit();">Paiement Credit </div> <!-- Text input--> <div class="form-group" id="afficheversement"> <label class="col-md-4 control-label" for="modeversement">Modalite de Versement</label> <div class="col-md-4"> <select class="col-md-4 control-label" name="modeversement" id="modeversement" style="width:215px;"> <option name="choix">Votre Choix</option> <option name="premier">Premier versement</option> <option name="deuxieme">Deuxieme versement</option> <option name="troisieme">Troisieme versement</option> </select> </div> </div> <!-- Text input--> <div class="form-group" id="affichemontantverse"> <label class="col-md-4 control-label" for="montantverse">Montant Verse</label> <div class="col-md-4"> <input id="montantverse" name="montantverse" type="text" placeholder="Montant verse" class="form-control input-md" required=""> </div> </div> <!-- Text input--> <div class="form-group" id="affichedateprochain"> <label class="col-md-4 control-label" for="dateversement">Date Prochain Versement</label> <div class="col-md-4"> <input id="dateversement" name="dateversement" type="date" placeholder="ex:2016-06-15" class="form-control input-md" required=""> </div> </div> <!-- Fin Troisieme etape de l'enregistrement --> <!-- Button (Double) --> <div class="form-group"> <label class="col-md-4 control-label" for="button1id"></label> <div class="col-md-8"> <button type="submit" id="button1id" name="Valider" class="btn btn-success">Enregistrer</button> <button type="reset" id="button2id" name="Annuler" class="btn btn-info">Annuler</button> </div> </div> <!-- Fin Button (Double) --> </fieldset> <!-- Debut Javascript --> <script type="text/javascript"> document.getElementById("afficheversement").style.display="none"; document.getElementById("affichemontantverse").style.display="none"; document.getElementById("affichedateprochain").style.display="none"; function afficheCash(){ document.getElementById("afficheversement").style.display="none"; document.getElementById("affichemontantverse").style.display="block"; document.getElementById("affichedateprochain").style.display="none"; } function afficheCredit(){ document.getElementById("afficheversement").style.display="block"; document.getElementById("affichemontantverse").style.display="block"; document.getElementById("affichedateprochain").style.display="block"; } </script> <!-- Fin Javascript --> </form> </div> </div> </div> <!-- fin du formulaire d'enregistrement du bon de la commande --> <?php require 'footer.php'; ?>
2.jai creer deux requetes dans le dossier requetes : rq_commandecash.php et rq_comandecredit.php les voici
voici le premier
voici le dernier:
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 <?php // creation d'une commande a credit function createBonCommandeCredit($pdo,$codecmde,$datecommande, $lieulivraison, $designation, $prixunitaire, $quantite, $totalclient, $prixfournisseur, $totalfournisseur, $modepaiement, $montantverse, $modaliteversement, $dateversement) { $req=$pdo->prepare("INSERT INTO boncommandecash(boncommandecash.codecmde, boncommandecash.datecommande, boncommandecash.lieulivraison, boncommandecash.designation, boncommandecash.prixunitaire, boncommandecash.quantite, boncommandecash.totalclient, boncommandecash.prixfournisseur, boncommandecash.totalfournisseur, boncommandecash.modepaiement, boncommandecash.montantverse, boncommandecredit.modaliteversement, boncommandecredit.dateversement) VALUES(:codecmde,:datecommande, :lieulivraison, :designation, :prixunitaire, :quantite, :totalclient, :prixfournisseur, :totalfournisseur, :modepaiement, :montantverse, :modaliteversement, dateversement)"); $req->execute(array( ':codecmde'=>$codecmde, ':datecommande'=>$datecommande, ':lieulivraison'=>$lieulivraison, ':designation'=>$designation, ':prixunitaire'=>$prixunitaire, ':quantite'=>$quantite, ':totalclient'=>$totalclient, ':prixfournisseur'=>$prixfournisseur, ':totalfournisseur'=>$totalfournisseur, ':modepaiement'=>$modepaiement, ':montantverse'=>$montantverse, ':modaliteversement'=>$modaliteversement, ':dateversement'=>$dateversement )); return true; } //fonction pour recuperer le dernier indice des commande enregistrées dans la base de données function ReturnMaxIdd($pdo) { $req=$pdo->query("SELECT MAX(id_credit) as maxId FROM commandecredit"); while ($commandecredit=$req->fetch()) { $maxId=$commandecredit['maxId']; } $req->closeCursor(); return $maxId ; } function RecupCmdeCredit($pdo,$codecmde) { $sql = $pdo->prepare("SELECT codecmde FROM commandecash WHERE codecmde = :codecmde"); $sql->execute(array(':codecmde' =>$codecmde)); $res = $sql->fetchAll(); return $res; } //liste des boncommande credit function listeCommandeCredit($pdo){ $req = $pdo->query("SELECT * FROM boncommandecredit"); $listeboncommandecredit=$req->fetchAll(); return $listeboncommandecredit; } /*function NouvelleCommande($pdo,$lieu) { $sql = $pdo->prepare("SELECT lieu FROM commande WHERE lieu = :lieu"); $sql->execute(array(':lieu' =>$lieu)); $res = $sql->fetchAll(); return $res; }*/ ?>
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 <?php // creation d'une commande cash function createBonCommandeCash($pdo,$codecmde,$datecommande, $lieulivraison, $designation, $prixunitaire, $quantite, $totalclient, $prixfournisseur, $totalfournisseur, $modepaiement, $montantverse) { $req=$pdo->prepare("INSERT INTO boncommandecash(boncommandecash.codecmde, boncommandecash.datecommande, boncommandecash.lieulivraison, boncommandecash.designation, boncommandecash.prixunitaire, boncommandecash.quantite, boncommandecash.totalclient, boncommandecash.prixfournisseur, boncommandecash.totalfournisseur, boncommandecash.modepaiement, boncommandecash.montantverse) VALUES(:codecmde,:datecommande, :lieulivraison, :designation, :prixunitaire, :quantite, :totalclient, :prixfournisseur, :totalfournisseur, :modepaiement, :montantverse)"); $req->execute(array( ':codecmde'=>$codecmde, ':datecommande'=>$datecommande, ':lieulivraison'=>$lieulivraison, ':designation'=>$designation, ':prixunitaire'=>$prixunitaire, ':quantite'=>$quantite, ':totalclient'=>$totalclient, ':prixfournisseur'=>$prixfournisseur, ':totalfournisseur'=>$totalfournisseur, ':modepaiement'=>$modepaiement, ':montantverse'=>$montantverse )); return true; } //liste des boncommandecashd function listeCommandeCash($pdo){ $req = $pdo->query("SELECT * FROM boncommandecash"); $listeboncommandecash=$req->fetchAll(); return $listeboncommandecash; } //fonction pour recuperer le dernier indice des commande enregistrées dans la base de données function ReturnMaxId($pdo) { $req=$pdo->query("SELECT MAX(id_cash) as maxId FROM commandecash"); while ($commandecash=$req->fetch()) { $maxId=$commandecash['maxId']; } $req->closeCursor(); return $maxId ; } function RecupCmdeCash($pdo,$codecmde) { $sql = $pdo->prepare("SELECT codecmde FROM commandecash WHERE codecmde = :codecmde"); $sql->execute(array(':codecmde' =>$codecmde)); $res = $sql->fetchAll(); return $res; } /*function NouvelleCommande($pdo,$lieu) { $sql = $pdo->prepare("SELECT lieu FROM commande WHERE lieu = :lieu"); $sql->execute(array(':lieu' =>$lieu)); $res = $sql->fetchAll(); return $res; }*/ ?>
3.dans mon dossier controleur jai creer un fichier controleur(controleurboncommmande.php) ou jappelle mes deux requetes et ma donnees de donnees
le voici :
Mais impossible jusqu' la d'inserer des les elements poster par le formilaire dans la base de donnees.
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105 <?php /** * */ /** * register */ session_start(); //print_r($_REQUEST); // on appelle la connexion a la base de données require_once('../config/db.inc.php'); require_once('../requete/rq_commandecash.php'); require_once('../requete/rq_commandecredit.php'); if(isset($_POST['Valider']) && isset($_POST['modepaiement']) && isset($_POST['codecmde']) && isset($_POST['datecommande']) && isset($_POST['lieulivraison']) && isset($_POST['designation']) && isset($_POST['prixunitaire']) && isset($_POST['quantite']) && isset($_POST['totalclient']) && isset($_POST['prixfournisseur']) && isset($_POST['totalfournisseur']) && isset($_POST['modepaiement']) && isset($_POST['montantverse'])) { //on initialise la variable commande à recuperer $char='CMDE'; //On assigne les valeurs du champ aux variables $codecmde = strtoupper($_POST['codecmde']); $datecommande = strtoupper($_POST['datecommande']); $dateCmde = strtoupper($_POST['dateCmde']); $lieulivraison = strtoupper($_POST['lieulivraison']); $designation = strtoupper($_POST['designation']); $prixunitaire = (int)($_POST['prixunitaire']); $quantite = (int)($_POST['quantite']); $totalclient = (int)($_POST['prixunitaire'])*(int)$_POST['quantite']; $prixfournisseur = (int)($_POST['prixfournisseur']); $totalfournisseur = (int)($_POST['prixfournisseur'])*(int)$_POST['quantite']; $modepaiement = strtoupper($_POST['modepaiement']); $montantverse = (int)($_POST['montantverse']); // recuperation du numero de commande $maxId=ReturnMaxId($pdo); $maxId++; $codecmde=strtoupper($_POST['datecommande']).".".$char.".".$maxId; if(createBonCommandeCash($pdo,$codecmde,$datecommande, $lieulivraison, $designation, $prixunitaire, $quantite, $totalclient, $prixfournisseur, $totalfournisseur, $modepaiement, $montantverse)) { $_SESSION['msgFlash'] = 'Vous avez été enregistré'; $_SESSION['msgStatut'] = 4; $boncommandecash=RecupCmdeCash($pdo,$codecmde); $_SESSION['codecmde']=$boncommandecash[0]['codecmde']; header('Location:../template/boncommande.php'); exit(); } else { $_SESSION['msgFlash'] = 'Votre enregistrement a échoué.'; $_SESSION['msgStatut'] = 2; header('Location: ../template/accueil.php'); } } elseif(isset($_POST['Valider']) && isset($_POST['modepaiement']) && isset($_POST['codecmde']) && isset($_POST['datecommande']) && isset($_POST['lieulivraison']) && isset($_POST['designation']) && isset($_POST['prixunitaire']) && isset($_POST['quantite']) && isset($_POST['totalclient']) && isset($_POST['prixfournisseur']) && isset($_POST['totalfournisseur']) && isset($_POST['modepaiement']) && isset($_POST['montantverse']) && isset($_POST['modaliteversement']) && isset($_POST['dateversement'])){ $char='CMD'; $codecmde = strtoupper($_POST['codecmde']); $datecommande = strtoupper($_POST['datecommande']); $dateCmde = strtoupper($_POST['dateCmde']); $lieulivraison = strtoupper($_POST['lieulivraison']); $designation = strtoupper($_POST['designation']); $prixunitaire = (int)($_POST['prixunitaire']); $quantite = (int)($_POST['quantite']); $totalclient = (int)($_POST['prixunitaire'])*(int)$_POST['quantite']; $prixfournisseur = (int)($_POST['prixfournisseur']); $totalfournisseur = (int)($_POST['prixfournisseur'])*(int)$_POST['quantite']; $modepaiement = strtoupper($_POST['modepaiement']); $montantverse = (int)($_POST['montantverse']); $modaliteversement = strtoupper($_POST['montantverse']); $dateversement = strtoupper($_POST['dateversement']); // recuperation de la commande $maxId=ReturnMaxIdd($pdo); $maxId++; $codecmde=strtoupper($_POST['datecommande']).".".$char.".".$maxId; if(createBonCommandeCredit($pdo,$codecmde,$datecommande, $lieulivraison, $designation, $prixunitaire, $quantite, $totalclient, $prixfournisseur, $totalfournisseur, $modepaiement,$montantverse, $modaliteversement, $dateversement)){ $_SESSION['msgFlash'] = 'Vous avez été enregistré'; $_SESSION['msgStatut'] = 4; $boncommandecredit=RecupCmdeCredit($pdo,$codecmde); $_SESSION['codecmde']=$boncommandecredit[0]['codecmde']; header('Location:../template/boncommande.php'); exit(); } else { $_SESSION['msgFlash'] = 'Votre enregistrement a échoué.'; $_SESSION['msgStatut'] = 2; header('Location: ../template/accueil.php'); } } session_destroy(); ?>
aucune operation ne s'execute
jattend votre soutiens
Bravo et Merci d' avance...
Partager