OVH Cloud OVH Cloud

pb champ NULL

4 réponses
Avatar
jpwitz
Bonjour

Comment détecter en php un champ mysql issu d'une requête:

Après la fonction :
$row = mysql_Fetch_array($id)

Le champ $row[1] est NULL, d'après son contenu visible par phpmyadmin

J'ai essaye isnull($row[1]) ou empty($row[1]) mais rien n'y fait

Merci de votre aide

4 réponses

Avatar
Jean Francois Ortolo
Le 13/11/2011 20:20, jpwitz a écrit :
Bonjour

Comment détecter en php un champ mysql issu d'une requête:

Après la fonction :
$row = mysql_Fetch_array($id)

Le champ $row[1] est NULL, d'après son contenu visible par phpmyadmin

J'ai essaye isnull($row[1]) ou empty($row[1]) mais rien n'y fait

Merci de votre aide





Bonsoir Monsieur

La fonction MySQL ISNULL(champ, valeur) figurant dans une requête
MySQL, rendra valeur si champ est égal à NULL.

Vous pouvez donner à valeur, une valeur impossible, que vous
détecterez en lecture.

Bien amicalement.

Jean Francois Ortolo
Avatar
jpwitz
J'ai trouvé!

Pour détecter en php un champ mysql NULL, il faut utiliser la fonction
isset($row[1])


Pour Le 13/11/2011 20:20, jpwitz a écrit :
Bonjour

Comment détecter en php un champ mysql issu d'une requête:

Après la fonction :
$row = mysql_Fetch_array($id)

Le champ $row[1] est NULL, d'après son contenu visible par phpmyadmin

J'ai essaye isnull($row[1]) ou empty($row[1]) mais rien n'y fait

Merci de votre aide
Avatar
Jean Francois Ortolo
Le 15/11/2011 08:41, jpwitz a écrit :
J'ai trouvé!

Pour détecter en php un champ mysql NULL, il faut utiliser la fonction
isset($row[1])






Bonjour Monsieur

C'est sur que vous alimentez votre $row avec une instruction MySQL de
lecture, quelle qu'elle soit.

Donc, même si la valeur de $row[1] = est NULL, cette valeur aura
quand même été alimentée par l'instruction MySQL de lecture.

La fonction isset($var) return true ou (!=úlse) si et seulement si
$var n'a jamais été alimentée...

Je sais bien qu'il est possible, que cette fonction joue sur la
valeur par défaut d'une variable non alimentée, cette valeur pouvant
être NULL.

Je me pose la question de la portabilité de votre solution sur les
différentes versions futures de php. ;)

Bien amicalement.

Jean Francois Ortolo
Avatar
jpwitz
Je suis d'accord avec vous.La logique voudrait que isset(row[1]) soit
true dans le cas présent.
Néanmoins php me dit le contraire... Je ne peux que m'incliner...
Wait and see... pour l'avenir

Merci de vous être intéressé à mon problème.