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 :

[Dates] Réagir en fonction d'un champ NULL


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7
    Par défaut [Dates] Réagir en fonction d'un champ NULL
    Bonjour à tous;

    J'ai créé un code qui devrait permettre d'identifier si un champs d'une table à une valeur "NULL" ou si elle a été modifier et de l'afficher:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?
    if ($data["premium"]!="NULL") { ?>
    Cette annonce a souscrit au mode Premium depuis le: <?=stripslashes($data["premium"]);?>.
    <?
    } else {
    echo "Cette annonce n'a pas souscrit au mode Premium et ne bénéficie donc pas d'un flux de consulations accéléré.";
    }
    ?>

    En fait le message apparaissant sur chaque page des annonces de mon site est toujours le même: Cette annonce a souscrit au mode Premium depuis le:
    Uniquement $data["premium"] diffère en affichant ce que le champs contient si il n'est pas NULL.

    Merci d'avance de m'indiquer ce qui ne va pas.

  2. #2
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    Salut,

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($data["premium"]!="NULL")
    cela vérifie si $data["premium"] est différent de la chaîne de caractère "NULL" et non si la variable est de valeur NULL.

    Utilise la fonction isset()

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    if (isset($data["premium"])) {
     
     
    }
    else
    {
     
    }
    ?>
    isset()

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7
    Par défaut
    Merci de ta réponse Gats:

    Voici mon code modifié:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    	  $premium = $data["premium"];
    if (isset($premium)) {
    echo "Cette annonce a souscrit au mode Premium depuis le: $premium ";
    } else {
    echo "Cette annonce n'a pas souscrit au mode Premium et ne bénéficie donc pas d'un flux de consulations accéléré.";
    }
    ?>

    Problème, celà affiche tout le temps "Cette annonce n'a pas souscrit au mode Premium et ne bénéficie donc pas d'un flux de consulations accéléré." même lorsqu'une annonce est en mode premium. Je ne comprend vraiment pas !

  4. #4
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($data["premium"]);
    ça donne quoi ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7
    Par défaut
    Lorsqu'une annonce n'est pas prémium:

    Cette annonce n'a pas souscrit au mode Premium et ne bénéficie donc pas d'un flux de consulations accéléré.NULL

    Lorsqu'elle est en mode premium:

    Cette annonce n'a pas souscrit au mode Premium et ne bénéficie donc pas d'un flux de consulations accéléré.NULL

    alors que dans ma base de données l'annonce qui est cencée être premium a bien le champs premium renseigné par la date du jour ou elle a souscrit au mode premium.

    C'est incompréhensible !

  6. #6
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    Logiquement, si la condition est bonne et qu'elle produit toujours le même résultat, on peut dire que le problème se situe au niveau de la variable.

    et si tu assigne manuellement une valeur à la variable quel est le résultat ?

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

Discussions similaires

  1. [MySQL] Traitement de date champs NULL 01/01/1970
    Par gat91200 dans le forum PHP & Base de données
    Réponses: 20
    Dernier message: 24/06/2015, 20h58
  2. Réponses: 1
    Dernier message: 15/03/2015, 17h44
  3. [AC-2013] Table variable en fonction d'un champ date
    Par choupi_oc dans le forum Access
    Réponses: 4
    Dernier message: 20/10/2014, 14h40
  4. Affichage dynamique en fonction d'un champ et la date courante
    Par Catarssis dans le forum Développement Sharepoint
    Réponses: 2
    Dernier message: 10/04/2013, 12h51
  5. Regrouper une sélection en fonction d'un champ et d'une date
    Par 12_darte_12 dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 29/03/2006, 17h12

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