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


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Femme Profil pro
    chomâge
    Inscrit en
    Décembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : chomâge

    Informations forums :
    Inscription : Décembre 2019
    Messages : 4
    Par défaut Enregistrement de la date
    Bonjour à tous !
    Je suis en train de créer mon site web et pour cela j'ai appris à coder seule mais j'ai vraiment beaucoup de mal avec le language PHP.
    J'aimerais de l'aide pour faire en sorte que lorsque l'utilisateur rempli mon formulaire, la date et l'heure soit automatiquement enregistrée sans que l'utilisateur ai besoin de le rentrer afin qu'ensuite les données soient rangées par ordre "d'arrivage".
    Je sais pas si je suis bien claire.
    On m'a déjà dit cela :

    Tu rajoute un chamois à ta table
    Au moment d’insérer les données dans la table (côte php) tu rajoute la date.
    Et puis c’est tout

    Mais je ne sais pas ce qu'est un chamois et comme je vous l'ai dit, je suis une bille en php.

    Ce serait vraiment génial si vous pouvez m'aider !!

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    chamois : Mammifère ruminant de la taille d’une grande chèvre, qui vit dans les hautes montagnes.
    dans la question est réglée, je n'ai vu de base de données dans une haute montagne je vois mal comment y insérer un chamois !

    pour revenir au code, est ce que vous avez déjà fait le code qui enregistre les données d'un formulaire simple ?

  3. #3
    Futur Membre du Club
    Femme Profil pro
    chomâge
    Inscrit en
    Décembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : chomâge

    Informations forums :
    Inscription : Décembre 2019
    Messages : 4
    Par défaut
    mdrrr il a dut vouloir dire champs.

    oui j'ai déjà cela :

    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
    if(isset($_POST['send']) AND is_string($_POST['sexe']) AND is_string($_POST['categorie']) AND is_string($_POST['ville']) AND is_numeric($_POST['telephone']) AND filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) AND is_string($_POST['titre'])){
      //Si les champs obligatoires ne contiennent pas d'erreurs alors on continue
      $sql = 'SELECT * FROM villes WHERE ville_nom_simple  like "'.$_POST['ville'].'"';
      $fsearch = $bdd->prepare($sql);
      $fsearch->execute();
      $count = $fsearch->rowCount($sql);
     
      if ($count >= 1){
       $valeurs = [':sex' => $_POST['sexe'], ':catego' => $_POST['categorie'], ':dep' => $_POST['departements'], ':vil' => $_POST['ville'], ':valid' => $_POST['validite'], ':tel' => $_POST['telephone'], ':mail' => $_POST['email'], ':descri' => $_POST['description'], ':ech' => $_POST['echange'], ':image1' => $img1, ':image2' => $img2, ':tit' => $_POST['titre']];
     
        $requete = "INSERT INTO offres (sexe, categorie, departement, ville, validite, telephone, email, description, echange, image1, image2, titre) VALUES(:sex, :catego, :dep, :vil, :valid, :tel, :mail, :descri, :ech, :image1, :image2, :tit)";
     
        $requete_preparee = $bdd->prepare($requete);
        $requete_preparee->execute($valeurs);
     
      } else {
        echo '<p style="color: white;">Veuillez entrez une ville existante</p>';
      }
    }
     
    ?>

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    pour quelqu'un qui a du mal, vous avez déjà bien avancé.

    l'étape suivante est en effet de rajouter un champ. une possibilité est de mettre un type "entier" pour y stocker un timestamp :
    https://php.developpez.com/faq/?page...date_timestamp
    mais il y a aussi plusieurs types date et heure :
    https://dev.mysql.com/doc/refman/8.0...ime-types.html

    et ensuite dans le tableau $valeurs vous rajoutez cela par exemple pour enregistrer un timestamp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ":date_enregistrement" => time(),
    documentation de la fonction time : http://php.net/time

    dans votre question vous disiez avoir besoin de trier les enregistrements par ordre d'insertion. vous n'avez pas de clé primaire pour cela ?

  5. #5
    Futur Membre du Club
    Femme Profil pro
    chomâge
    Inscrit en
    Décembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : chomâge

    Informations forums :
    Inscription : Décembre 2019
    Messages : 4
    Par défaut
    C'est parce que ce n'est pas moi qui l'ai fait, j'ai payé un développeur pour faire fonctionner mon formulaire mais je n'ai eut l'idée qu'après de rajouter l'enregistrement de la date et e l'heure.

    Si je fais comme ça ça va ?

    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
    if(isset($_POST['send']) AND is_string($_POST['sexe']) AND is_string($_POST['categorie']) AND is_string($_POST['ville']) AND is_numeric($_POST['telephone']) AND filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) AND is_string($_POST['titre'])){
      //Si les champs obligatoires ne contiennent pas d'erreurs alors on continue
      $sql = 'SELECT * FROM villes WHERE ville_nom_simple  like "'.$_POST['ville'].'"';
      $fsearch = $bdd->prepare($sql);
      $fsearch->execute();
      $count = $fsearch->rowCount($sql);
     
    // date du jour
    echo $date = date("d/m/Y");
    // tableau des jours de la semaine
    $joursem = array('dim', 'lun', 'mar', 'mer', 'jeu', 'ven', 'sam');
    // extraction des jour, mois, an de la date
    list($jour, $mois, $annee) = explode('/', $date);
    // calcul du timestamp
    $timestamp = mktime (0, 0, 0, $mois, $jour, $annee);
    // affichage du jour de la semaine
    echo $joursem[date("w",$timestamp)];
     
     
      if ($count >= 1){
       $valeurs = [':sex' => $_POST['sexe'], ':catego' => $_POST['categorie'], ':dep' => $_POST['departements'], ':vil' => $_POST['ville'], ':valid' => $_POST['validite'], ':tel' => $_POST['telephone'], ':mail' => $_POST['email'], ':descri' => $_POST['description'], ':ech' => $_POST['echange'], ':image1' => $img1, ':image2' => $img2, ':tit' => $_POST['titre'], ":date_enregistrement" => $_POST['time()']];
     
        $requete = "INSERT INTO offres (sexe, categorie, departement, ville, validite, telephone, email, description, echange, image1, image2, titre, date_enregistrement) VALUES(:sex, :catego, :dep, :vil, :valid, :tel, :mail, :descri, :ech, :image1, :image2, :tit, :date_enr)";
     
        $requete_preparee = $bdd->prepare($requete);
        $requete_preparee->execute($valeurs);
     
      } else {
        echo '<p style="color: white;">Veuillez entrez une ville existante</p>';
      }
    }
     
    ?>
    Mais je n'ai pas trouvé comment enregistrer l'heure

    Merci de prendre du temps pour moi en tout cas !

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    ce n'est pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       $valeurs = [..........":date_enregistrement" => $_POST['time()'] ];
    mais simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       $valeurs = [..........":date_enregistrement" => time() ];
    Cela dit, time() revoie le TIMESTAMP.

    Si, dans la base de données, la colonne (on ne dit pas "chamois", ni "champs") est au format DATETIME, alors il faut mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       $valeurs = [..........":date_enregistrement" => date('Y-m-d G:i:s') ];

    N.B. Tu as Ton développeur a bien préparé la 2ème requête.
    Pourquoi ne pas l'avoir fait avec la 1ère ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      $sql = 'SELECT * FROM villes WHERE ville_nom_simple  like :ville';
      $fsearch = $bdd->prepare($sql);
      $fsearch->execute([ ':ville' => $_POST['ville'] ]);

Discussions similaires

  1. [VBA-E] enregistrement fichier txt - date
    Par Lnmex dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 23/05/2024, 17h38
  2. Numérotation enregistrement suivant une date
    Par kornkiller dans le forum Access
    Réponses: 6
    Dernier message: 13/06/2006, 10h18
  3. Requêtes sur enregistrements avec critères dates
    Par Aliveli dans le forum Access
    Réponses: 10
    Dernier message: 05/06/2006, 13h41
  4. Réponses: 4
    Dernier message: 27/05/2006, 20h30
  5. formulaire: enregistrement en double/date now pb
    Par debdev dans le forum Access
    Réponses: 18
    Dernier message: 02/01/2006, 12h54

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