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 :

Enregistrement de la date dans phpMyadmin


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2022
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2022
    Messages : 78
    Points : 31
    Points
    31
    Par défaut Enregistrement de la date dans phpMyadmin
    Bonjour,

    En ce jour, je contaste lors de l'enregistrement des données de mon formulaire, la date ne s'enregistre plus.
    Je fais les mm essais sur mon hébergement perso et la date commande s'affiche bien lorsqu'on teste le formulaire

    Il s'agit du même fichier Php pourtant .

    Nom : screencapture-phpmyadmin-cluster027-hosting-ovh-net-index-php-2022-05-25-10_34_52.png
Affichages : 95
Taille : 453,6 KoNom : screencapture-dev-laboratoire-labeo-fr-myAdminLab-index-php-2022-05-25-10_34_03.png
Affichages : 84
Taille : 411,4 Ko
    Voici le code, je ne vous mets pas le formulaire entier
    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
    159
    <?php
    get_header();
    ?>
    <div class="row pb_3per page">
     
    	<div class="small-12 large-8 columns">
    		<div id="primary" class="content-area">
    			<main id="main" class="site-main" role="main">
    				<?php
    				if (have_posts()) {
    					while (have_posts()) : the_post(); ?>
    						<?php get_template_part('template-parts/content', 'page'); ?>
     
     
    						<?php include get_template_directory() . '/custom-part-content-supp.php' ?>
     
    						<div>
    							<fieldset class="fieldset">
     
    								<legend>Commande de kits génomique</legend>
     
     
    								<!-- mise en place de la Bdd -->
    								<?php
    								$servname = "";
    								$dbname = "";
    								$user = "";
    								$pass = "";
     
     
    								$identifiant = $_POST['identitficateur'];
    								$nom = $_POST['nom'];
    								$prenom = $_POST['prenom'];
    								$adresse = $_POST['street'];
    								$ville = $_POST['city'];
    								$cp = $_POST['postal'];
    								$complementAdresse = $_POST['street2'];
    								$mail = $_POST['email'];
    								$fixe = $_POST['tel'];
    								$portable = $_POST['phone'];
    								$kit = $_POST['number-kits'];
    								$tube = $_POST['number-tubes'];
    								$aiguille = $_POST['number-aiguilles'];
    								$adaptateur = $_POST['number-adaptateur'];
    								$cartonSmall = $_POST['number-small'];
    								$cartonBig = $_POST['number-big'];
    								$etiquetteChronopost = $_POST['number-chronospost'];
    								$enveloppeBulle = $_POST['number-enveloppe'];
    								$commentaire = $_POST['message'];
     
    								try {
    									//on se connecte à la base de données
    									$dbco = new PDO("mysql:host=$servname;dbname=$dbname", $user, $pass);
    									$dbco->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     
     
     
     
    									//$sth appartient à la classe PDOStatement
    									$sth = $dbco->prepare("
                        INSERT INTO formulaire_ifce(identifiant,nom,prenom,adresse,ville,codePostal,complementAdresse,mail,fixe,portable,kit,tube,aiguille,adaptateur,cartonSmall,cartonBig,etiquetteChronopost,enveloppeBulle,commentaire)
                        VALUES (:identifiant,:nom, :prenom, :adresse, :ville, :cp, :complement, :mail,:fixe,:portable,:kit,:tube,:aiguille,:adaptateur,:cartonSmall,:cartonBig,:etiquetteChronopost,:enveloppeBulle,:commentaire)
                    ");
    									//La constante de type par défaut est STR
    									$sth->bindValue(':identifiant', $identifiant);
    									$sth->bindValue(':nom', $nom, PDO::PARAM_STR);
    									$sth->bindValue(':prenom', $prenom, PDO::PARAM_STR);
    									$sth->bindValue(':adresse', $adresse, PDO::PARAM_STR);
    									$sth->bindValue(':ville', $ville, PDO::PARAM_STR);
    									$sth->bindValue(':cp', $cp, PDO::PARAM_INT);
    									$sth->bindValue(':complement', $complementAdresse, PDO::PARAM_STR);
    									$sth->bindValue(':mail', $mail, PDO::PARAM_STR);
    									$sth->bindValue(':fixe', $fixe);
    									$sth->bindValue(':portable', $portable);
    									$sth->bindValue(':kit', $kit, PDO::PARAM_INT);
    									$sth->bindValue(':tube', $tube, PDO::PARAM_INT);
    									$sth->bindValue(':aiguille', $aiguille, PDO::PARAM_INT);
    									$sth->bindValue(':adaptateur', $adaptateur, PDO::PARAM_INT);
    									$sth->bindValue(':cartonSmall', $cartonSmall, PDO::PARAM_INT);
    									$sth->bindValue(':cartonBig', $cartonBig, PDO::PARAM_INT);
    									$sth->bindValue(':etiquetteChronopost', $etiquetteChronopost, PDO::PARAM_INT);
    									$sth->bindValue(':enveloppeBulle', $enveloppeBulle, PDO::PARAM_INT);
    									$sth->bindValue(':commentaire', $commentaire, PDO::PARAM_STR);
    									$sth->execute();
    								} catch (PDOException $e) {
    									echo "Erreur : " . $e->getMessage();
    								}
    								?>
     
    								<form method="post" action="" enctype="multipart/form-data" class="ifce">
     
    									<div class="ifce">
    										<div class="small-12 large-12 columns ifce-first">
    											<div class="small-12 large-6 columns">
    												<label for="identity-number">N° Identificateur</label>
    												<input type="text" class="sg-input" id="identitficateur" name="identitficateur" required />
    												<div class="invalid-feedback">
    													Numéro inconnu
    												</div>
    												<div class="valid-feedback">
    													Numéro reconnu
    												</div>
    											</div>
     
     
    											<div class="small-12 large-6 columns">
    												<label for="email">Email</label>
    												<input readonly type="email" disabled="disabled" id="email" name="email" required />
    											</div>
    										</div>
     
    										<div class="small-6 large-6 columns">
    											<label for="nom">Nom</label>
    											<input readonly type="text" disabled="disabled" id="nom" name="nom" required>
    										</div>
    										<div class="small-6 large-6 columns">
    											<label for="prenom">Prénom</label>
    											<input readonly type="text" disabled="disabled" id="prenom" name="prenom" required>
    										</div>
    										<fieldset class="fieldset">
     
    											<legend>Adresse de livraison</legend>
    											<div class="small-12 large-12 columns">
    												<label for="street">Adresse</label>
    												<input type="text" disabled="disabled" id="street" name="street" required />
    											</div>
    											<div class="small-12 large-12 columns">
    												<label for="street2">Complement adresse </label>
    												<input type="text" disabled="disabled" id="street2" name="street2" />
    											</div>
     
    											<div class="small-4 large-4 columns">
    												<label for="postal">Code Postal</label>
    												<input type="text" disabled="disabled" id="postal" name="postal" maxlength="5" pattern="[0-9]{5}" title="5 chiffres" required />
    											</div>
     
    											<div class="small-8 large-8 columns">
    												<label for="city">Ville</label>
    												<input type="text" disabled="disabled" id="city" name="city" required />
    											</div>
    										</fieldset>
    										<div class="small-6 large-6 columns">
    											<label for="phone">Teléphone Portable</label>
    											<input readonly type="text" disabled="disabled" id="phone" name="phone" />
    										</div>
    										<div class="small-6 large-6 columns">
    											<label for="tel">Téléphone Fixe</label>
    											<input readonly type="text" disabled="disabled" id="tel" name="tel" />
    										</div>
    										<div class="small-12 large-12 columns">
    											<label for="kit">Kits </label><em>1 kit contient 1 sachet étanche,1 planche de 5 étiquettes,1 buvard</em>
    											<!-- <input type="number" disabled="disabled" class="form-control" id="kit" name="kit" required/> -->
    											<select class="sg-input either-required" name="number-kits" id="number-kits" disabled="disabled">
    												<option value="0">0</option>
    												<option value="1">1</option>
    												<option value="2">2</option>
    												<option value="3">3</option>
    												<option value="4">4</option>
    												<option value="5">5</option>

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Tes captures d'écran sont dures à lire
    Ton script est dur à lire
    Pas facile de t'aider

    Le problème est-il "la colonne dateCommande contient des dates 0000-00-00" ?

    Dans ton INSERT, je ne vois pas de données pour dateColonne

    Comment procèdes-tu pour la valorisation de dateColonne ?
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2022
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2022
    Messages : 78
    Points : 31
    Points
    31
    Par défaut
    Ca remarche, j'ai rien modifié, je ne comprend aps ce qui se passe avec ce phpmyadmin.
    En faite, la date s'enregistré automatiquement au moment de l'envoi du formulaire .
    Certes, il y'a 2 h d'ecart mais je ne pense pas qu'on puisse y remédiéNom : 2022-05-25_11h18_06.png
Affichages : 101
Taille : 18,2 Ko directement dans phpmyadmin
    Nom : 2022-05-25_11h18_06.png
Affichages : 101
Taille : 18,2 Ko

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    phpMyAdmin ne fait qu'afficher les valeurs en base.

    En faite, la date s'enregistré automatiquement au moment de l'envoi du formulaire .
    Comment ça ? Dans le INSERT il n'y a pas de référence à dateCommande.

    Certes, il y'a 2 h d'ecart mais je ne pense pas qu'on puisse y remédié
    Il doit y avoir un problème de fuseau horaire, à voir côté MySQL ou PHP ou sur la valorisation de dateCommande.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  5. #5
    Membre habitué Avatar de two3d
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2012
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2012
    Messages : 126
    Points : 168
    Points
    168
    Par défaut
    Pour les deux heures d'écart il te faut mettre un date_default_timezone_set() avec le fuseau que tu veux (à mon avis "Europe/Paris" sera ce que tu cherche), en haut de ton fichier PHP.

    Pour la date, met la valeur par défaut à CURRENT_TIMESTAMP.

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2022
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2022
    Messages : 78
    Points : 31
    Points
    31
    Par défaut
    Je sais pas , j'avoue que mon code fonctionne comme ca depuis le début, sans avoir rien mis dans mon INSERT
    Je débute en PHP
    Sauf que j'ai du mal avec mes requêtes car j'aimerai faire ressortir toutes les commandes du jour sauf vu dans phpMyadmin mon type dateCommande est sur dateTime, si je fais une requete avec now() ou curdate() cela ne marche pas
    J'ai pas besoin de l'heure à vrai dire mais si je change le type de dateCommande en Date , je retombe à 0000-00-00 et j'ai vraiement besoin au minimun de la date.Nom : 2022-05-25_12h57_48.png
Affichages : 80
Taille : 11,6 KoNom : 2022-05-25_12h35_44.png
Affichages : 68
Taille : 16,8 Ko
    Images attachées Images attachées  

  7. #7
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    j'aimerai faire ressortir toutes les commandes du jour
    sauf vu dans phpMyadmin mon type dateCommande est sur dateTime, si je fais une requete avec now() ou curdate() cela ne marche pas
    Avoir l'horodatage complet de la commande, c'est plutôt une bonne chose

    Il existe toute une panoplie de fonctions temporelles SQL pour répondre à ton besoin => https://dev.mysql.com/doc/refman/8.0...functions.html

    Pour les commandes du jour, il faut comparer la composante DATE de dateCommande avec la composante DATE de NOW(), soit :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ALL ...
    FROM ...
    WHERE DATE(dateCommande) = DATE(NOW())

    Pour les commandes de la veille :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ALL ...
    FROM ...
    WHERE DATE(dateCommande) = DATE(NOW() - INTERVAL 1 DAY)

    Pour les commandes de la semaine précédente :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ALL ...
    FROM ...
    WHERE YEARWEEK(dateCommande) = YEARWEEK(NOW() - INTERVAL 1 WEEK)

    etc.

    J'ai pas besoin de l'heure à vrai dire mais si je change le type de dateCommande en Date , je retombe à 0000-00-00 et j'ai vraiement besoin au minimun de la date.
    Garde l'heure, ça peut toujours être utile
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2022
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2022
    Messages : 78
    Points : 31
    Points
    31
    Par défaut
    Merci beaucoup pour toutes ses aides :-)

    Ou puis je trouver de la documentation si je voulais par exemple chercher un seul client par son nom par exemple?

  9. #9
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2022
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2022
    Messages : 78
    Points : 31
    Points
    31
    Par défaut
    c'est bon , j'ai trouvé comment faire :-), je ferme le sujet

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

Discussions similaires

  1. [CR10] Problème de date dans l'en-tête de groupe
    Par bernie.noel dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 17/08/2005, 00h48
  2. problème champ date dans base oracle
    Par ludovik dans le forum Oracle
    Réponses: 6
    Dernier message: 25/07/2005, 15h48
  3. Problème de date dans fonction utlisateur
    Par lutin2003 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/04/2005, 16h25
  4. Problème de date dans requête de màj imbriquée
    Par VirginieGE dans le forum Langage SQL
    Réponses: 11
    Dernier message: 20/07/2004, 15h34
  5. Problème de date dans MONTHS_BETWEEN
    Par ghostlord79 dans le forum Oracle
    Réponses: 10
    Dernier message: 07/04/2004, 11h21

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