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 :

insertion d'une date dans un champ DATE


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Par défaut insertion d'une date dans un champ DATE
    Bonjour à tous..

    J'aimerais inserer une date rentré par l'utilisateur grace a un formulaire (un champ texte) dans un champs de ma table, le champ fin_vip qui est de type DATE.

    Evidemment la date rentré par le formulaire est de cette forme : AAAA-MM-JJ


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $date_fin = mysql_real_escape_string($_POST['date_fin']);
        $sql = 'UPDATE cb_users SET vip=1, fin_vip='.$date_fin.' WHERE usr_name="'.$pseudo.'"';
            $requete = mysql_query($sql)  or die(mysql_error());
    malheureusement pour l'instant cette requete met a chaque fois mon champ fin_vip à 0000-00-00 ....

    Si j'affiche ma requete :

    UPDATE cb_users SET vip=1, fin_vip=1990-06-23 WHERE usr_name="Snipy"
    L'erreur doit etre bete, mais pour l'instant je ne vois pas.

    merci d'avance !

  2. #2
    Membre éprouvé
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 180
    Par défaut
    Sans vouloir dire de bêtises, peut-être parce que ce n'est formaté en date via PHP. As-tu essayé en rajoutant des guillemets tout de même? As-tu bien vérifié que ta variable ne contient aucun espace?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 99
    Par défaut
    Bonjour,

    il te manque les apostrophes pour la date dans ta requête

    essaie ca, ca devrait fonctionner
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    UPDATE cb_users SET vip=1, fin_vip="1990-06-23" WHERE usr_name="Snipy"

  4. #4
    Membre averti

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Par défaut
    MEa Culpa --'


    Maintenant, si je veux rentrer la date sous le format
    18/01/2010 dans mon formulaire, quel est la facon la plus simple de pouvoir l'inserer par la suite dans mon champ de type DATE.
    De faire la conversion par une fonction mysql ou en php ?

  5. #5
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    Citation Envoyé par Snipy Voir le message
    Maintenant, si je veux rentrer la date sous le format
    18/01/2010 dans mon formulaire, quel est la facon la plus simple de pouvoir l'inserer par la suite dans mon champ de type DATE.
    De faire la conversion par une fonction mysql ou en php ?
    Pas la peine, un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_replace( '/', '-', $ta_date );
    suffiras.

  6. #6
    Membre averti

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Par défaut
    Pas tout a fait, il faut aussi inverser l'année et le jour

    car dans la bdd c'est au format : AAAA/MM/JJ

    Et j'aimerais qu'on puisse inserer via le formulaire au format : JJ/MM/AAAA

  7. #7
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    En MySQL tu peux recevoir la date dans le bon format

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT DATE_FORMAT(fin_vip,'%d/%m/%Y') FROM cb_users

Discussions similaires

  1. [LibreOffice][Tableur] Récupérer date d'un champ date dans un formulaire
    Par Eklaes dans le forum OpenOffice & LibreOffice
    Réponses: 4
    Dernier message: 11/12/2014, 11h11
  2. [AC-2003] Vider champ date si autre champ date rempli
    Par lucas-18 dans le forum IHM
    Réponses: 3
    Dernier message: 19/01/2011, 20h25
  3. Insertion d'une image dans un champs d'une table
    Par aminus19 dans le forum Requêtes
    Réponses: 1
    Dernier message: 17/06/2010, 15h17
  4. Requette d insertion d une valeur dans un champ d une table
    Par djibsonne dans le forum Langage SQL
    Réponses: 3
    Dernier message: 29/05/2010, 10h52
  5. Insérer une heure dans un champs date
    Par erox44 dans le forum SQL
    Réponses: 7
    Dernier message: 22/04/2008, 12h25

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