Bonjour Badaze,
J'ai besoin d'insérer les données Retard et heures supplémentaires dans une table à la base de données.
Le code est le suivant :
J'ai aucune donnée insérée.
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 <?php //---- DATABASE define('DB_HOST', '127.0.0.1'); define('DB_NAME', 'tests'); define('DB_USER', 'root'); define('DB_PWD' , '');$bdd = new PDO('mysql:host='.DB_HOST.'; dbname='.DB_NAME,DB_USER,DB_PWD, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); $query = "SELECT nom, prenom, `date`, heure from horaires order by nom, prenom, `date`, heure"; $prepared = $bdd->prepare($query); $prepared->execute(); //------ Initialisation des variables pour test de changement de personne/date $savNom = ""; $savPrenom = ""; $savDate = ""; $savHeure = ""; $row = $prepared->fetch(PDO::FETCH_ASSOC); while ($row) { $nom = $row['nom']; $prenom = $row['prenom']; $date = $row['date']; $heure = $row['heure']; // détecte le changement de personne et de jour if ($savNom != $nom || $savPrenom != $prenom || $savDate != $date) { $savNom = $nom; $savPrenom = $prenom; $savDate = $date; // init des champs heures $heures = array(); } // sauvegarde de l'heure pour chaque enregistrement $heures[] = $heure; $row = $prepared->fetch(PDO::FETCH_ASSOC); // détecte le changement de personne ou de jour ou la fin des données $nom2 = $row['nom']; $prenom2 = $row['prenom']; $date2 = $row['date']; $heure2 = $row['heure']; if ($savNom != $nom2 || $savPrenom != $prenom2 || $savDate != $date2 || !$row) { //---- Insertion des données dans la table $nomPourTable = $savNom; $prenomPourTable = $savPrenom; $datePourTable = $savDate; $heureInPourTable1 = isset($heures[0]) ? $heures[0] : '00:00:00'; $heureOutPourTable1 = isset($heures[1]) ? $heures[1] : '00:00:00'; $heureInPourTable2 = isset($heures[2]) ? $heures[2] : '00:00:00'; $heureOutPourTable2 = isset($heures[3]) ? $heures[3] : '00:00:00'; $heureInPourTable3 = isset($heures[4]) ? $heures[4] : '00:00:00'; $heureOutPourTable3 = isset($heures[5]) ? $heures[5] : '00:00:00'; $heureInPourTable4 = isset($heures[6]) ? $heures[6] : '00:00:00'; $heureOutPourTable4 = isset($heures[7]) ? $heures[7] : '00:00:00'; $retard = "00:00:0"; // J'ai mis 00:00:00 car le code pour calculer les retards est trop long $supp = "00:00:00"; // J'ai mis 00:00:00 car le code pour calculer les heures supplémentaires est trop long $requete1 = ("insert into horairesBack ( nom, prenom, `date`, heureIn1, heureOut1, heureIn2, heureOut2, heureIn3, heureOut3, heureIn4, heureOut4, retard, supp ) VALUES ( '$nomPourTable','$prenomPourTable', '$datePourTable', '$heureInPourTable1', '$heureOutPourTable1','$heureInPourTable2', $heureOutPourTable2,$heureInPourTable3, $heureOutPourTable3, '$heureInPourTable4', '$heureOutPourTable4', '$retard', '$supp' "); $prepared2 = $bdd->prepare($requete1 ); $prepared2->execute(); print "$nomPourTable | $prenomPourTable | $datePourTable | $heureInPourTable1 | $heureOutPourTable1 | $heureInPourTable2 | $heureOutPourTable2 | $heureInPourTable3 | $heureOutPourTable3 | $heureInPourTable4 | $heureOutPourTable4<br/>"; } }
Merci pour ton aide
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager