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 :

Insérer une date dans MYSQL [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de pony99
    Femme Profil pro
    Inscrit en
    Mars 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 161
    Points : 69
    Points
    69
    Par défaut Insérer une date dans MYSQL
    Bonjour,
    Je débute en Php, donc ne soyez pas trop dur avec moi

    Voila je suis entrain de créé une base de donné pour des documents.

    Donc dans mon formulaire, il ya a le titre du document, le nombre de page et la date de création.

    Dans Mysql j'ai crée un champ : date_version avec Type: date forma 0000-00-00

    Comment crée un formulaire pour récupéré la date et l'insérée dans MYSQL?

    Je cherche depuis se matin sur le net mais je n'ai pas trouvé

    Merci

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut,
    pour récupérer la date du jour tu peux utiliser date("Y-m-d") que tu ajoutes dans ta requête d'insertion.
    Si tu utilises VALUES :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "INSERT INTO table (titre, date_insertion) VALUES ('".$titre."', '".date("Y-m-d")."')";
    Si tu utilises SET :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "INSERT INTO table SET titre = '".$titre."', date_insertion = '".date("Y-m-d")."'";
    plus d'infos ici : http://www.php.net/manual/fr/function.date.php

    bye
    Vive les roues en pierre

  3. #3
    Membre du Club Avatar de pony99
    Femme Profil pro
    Inscrit en
    Mars 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 161
    Points : 69
    Points
    69
    Par défaut
    Non en fait je dois ajouté la date de création du fichier:

    Exemple :

    Titre : "Production d'enzyme polygalacturonase" -- Date de création : 2004-05-12

    Donc moi je veux récupéré le date 2004-05-12 pour l'inséré dans la base de donné

  4. #4
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Tu parles de quel fichier ?
    et ceci :

    Titre : "Production d'enzyme polygalacturonase" -- Date de création : 2004-05-12

    cela vient d'où ?

    Si tu parles d'un fichier physique sur le serveur tu peux utiliser stat() ^^

    (Et bienvenue sur le forum )
    Vive les roues en pierre

  5. #5
    Membre du Club Avatar de pony99
    Femme Profil pro
    Inscrit en
    Mars 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 161
    Points : 69
    Points
    69
    Par défaut
    Non le fichier lui n'est pas sur le serveur!

    Bon je reprends en plus simple
    Comment faire pour rentré une date dans la base, exemple date de naissance d'un utilisateur.

    (Merci!! )

  6. #6
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Pour insérer une date dans un champ de type date il faut qu'elle soit formatée, ex. :

    $date = "2004-11-20";
    $sql = "INSERT INTO table SET titre = '".$titre."', date_insertion = '".$date."'";

    Pour ton formulaire tu as plusieurs méthodes :

    Ty peux faire des select HTML :
    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
    <select name="annee">
    <option vlaue="2002">2002</option>
    <option vlaue="2003">2003</option>
    ...
    </select>
     
    <select name="mois">
    <option vlaue="01">janvier</option>
    <option vlaue="02">février</option>
    ...
    </select>
     
    <select name="jour">
    <option vlaue="01">1</option>
    <option vlaue="02">2</option>
    ...
    </select>
    Tu peux bien sûr générer ca avec une boucle en PHP.

    Ensuite pour la récupération, avec un formulaire en POST par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // Si toutes les variables nécessaires à la création de la date sont définies
    // est que la date est valide (checkdate())
    if(isset($_POST['annee']) && isset($_POST['mois']) && isset($_POST['jour'])
    && checkdate($_POST['mois'], $_POST['jour'], $_POST['annee'])) {
    // création de la date au format date MySQL
    $date = $_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'];
    // et ici tu mets ta requête d'insertion en utilisant la variable $date
    }
    Tu peux également faire un champ de formulaire texte ou l'utilisateur devra rentrer la date au format AAAA-MM-JJ ou encore 3 champs textes : année, mois, jour.

    Globalement le principe est de récupérer une date, de vérifier sa validité et de la formater au format date MySql YYYY-MM-DD.
    Je ne sais pas si j'ai répondu à ta question...
    Vive les roues en pierre

  7. #7
    Membre du Club Avatar de pony99
    Femme Profil pro
    Inscrit en
    Mars 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 161
    Points : 69
    Points
    69
    Par défaut
    Oui!! Voilà c'est ce que je voulai!
    Que me conseil tu, d'utilisé, car c'est vrais que les variables nécessaires à la création de la date sont définies!

    Merci

  8. #8
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Ca c'est à toi de voir, personnellement j'utilise un input AAAA-MM-JJ, une regex plus checkdate(). Faut juste savoir que le fait de mettre des select te dispense pas des tests de vérification .
    Vive les roues en pierre

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

Discussions similaires

  1. Comment insérer une date dans FireBird/Interbase ?
    Par tipiweb dans le forum Bases de données
    Réponses: 3
    Dernier message: 29/05/2006, 16h54
  2. Réponses: 1
    Dernier message: 12/05/2006, 17h07
  3. impossible d'insérer une date dans la base
    Par bobic dans le forum ASP
    Réponses: 3
    Dernier message: 03/10/2005, 11h29
  4. insérer une date dans une BDD
    Par requiemforadream dans le forum ASP
    Réponses: 7
    Dernier message: 28/04/2005, 10h40
  5. insérer une date dans une table mssql
    Par ericmart dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/01/2004, 10h37

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