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 :

Insérer date vide


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Par défaut Insérer date vide
    Bonjour tout le monde et merci de m'aider.

    J'ai:

    1 formulaire avec un champs texte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="deadline" type="text"/>
    1 table dans ma base de donnée avec pour champ: "deadline" de type "datetime" pouvant etre NULL


    Quelle est la syntaxe a utiliser pour insérer en php ce champs dans la table mysql?


    J'essaie ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = "insert into partenaire values('".$_POST['deadline']."');
    Et voici l'erreur obtenue lorsque le champs est vide(quand l'utilisateur n'a pas rentré de date):

    Incorrect datetime value: '' for column 'deadline' at row 1


    Comment faire pour qe la valeur NULL soit insérée au lieu d'un caractère blanc?



    Merci beaucoup pour votre aide!

  2. #2
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Bonjour,

    Quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $deadline = empty($_POST['deadline']) ? "NULL" : "'" . $_POST['deadline'] . "'";
    $query = "insert into partenaire values(" . $deadline . ")";
    Je n'ai pas testé, mais ca devrait fonctionner.

    Gillou

  3. #3
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Par défaut
    Merci! ca fonctionne.


    Mais peut etre que je m'y prend mal.

    Ma question + générale est:


    1) j'ai un champ texte dans un formulaire HTML
    2) celui ci devrait contenir une date entrée par l'utilisateur
    3) comment faire pour insérer ce champ dans un champ datetime d'une base MySQL MEME si l'utilisateur n'a pas rempli le champ HMTL (et qu'il est donc vide)

  4. #4
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    C'est ce que je t'ai envoyé, non ?!

    Page HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <form action='pag2.php' method='post'>
    <label for"deadline ">Dead Line : </label>
    <input type="text" name="deadline " />
    </form>
    page2.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
    $deadline = empty($_POST['deadLine']) ? "NULL" : "'" . $_POST['deadline'] . "'";
    $query = "insert into partenaire values(" . $deadline . ")";
    ...
    ?>
    Si $_POST['deadline'] est vide, $query vaut :
    $query = "insert into partenaire values(NULL)";

    Remarque : Vérifie que le champ date que tu as dans ta base accepte les valeurs NULL.


    Gillou

  5. #5
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Par défaut
    Oui oui! (je t'ai d'ailleurs dit que ca fonctionnait et je t'ai remercié)



    Mais je me demande juste si il n'existe pas une facon plus propre d'insérer un champs date qui pourrait etre null

Discussions similaires

  1. [XSD] : Element 'date' vide
    Par cvacavant dans le forum Valider
    Réponses: 4
    Dernier message: 16/06/2009, 18h21
  2. Insérer Date, Heure marche/arret d'un PC sous ACCESS
    Par preatorien dans le forum Access
    Réponses: 2
    Dernier message: 07/02/2006, 19h40
  3. champ date vide, requete
    Par w.b. dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 15/02/2005, 16h51
  4. insérer date dans bdd mssql
    Par ericmart dans le forum ASP
    Réponses: 18
    Dernier message: 14/12/2004, 14h10
  5. Update de date vide dans une table
    Par gidebo dans le forum Bases de données
    Réponses: 4
    Dernier message: 15/03/2004, 16h48

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