Skip to content
Valider d257a795 rédigé par marcimat's avatar marcimat
Parcourir les fichiers

PHP 8.1 #4968 : Deprecated-- sur spip_mysql_cite() si valeur null;

Le comportement de `sql_quote(null)` est potentiellement problématique.
Il se comporte comme auparavant, c’est à dire tel que `sql_quote('')`.

Il serait plus logique de retourner le vrai terme `NULL` pour Mysql ;
c’est d’ailleurs ce qui est fait lorsqu’on indique le type de champ
tel que `sql_quote(null, 'int')`.

Par contre, si le type explicite `not null` tel que dans `sql_quote(null, 'int NOT NULL')`,
alors ça retourne "''" car l’on sait que NULL ne peut être présent dans la colonne.

Cependant, toute opération de comparaison avec `NULL` en mysql retourne `NULL`
(cf: https://dev.mysql.com/doc/refman/8.0/en/working-with-null.html).
Donc si une personne voulait effecivement comparer avec null, il faut utiliser `IS NULL` ou `IS NOT NULL`
ce que ne sera pas fait avec `'texte = ' . sql_quote(null, 'string')`.
parent 6aa0f802
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter