bug test inégalités ?

la boucle suivante a un comportement surprenant, différent selon la
configuration :

<BOUCLE_test (RUBRIQUES) {id_rubrique} {id_rubrique > 17}>
"message"
</BOUCLE_test>

si on l'appelle avec id_rubrique=2
cela m'affiche le "message", or pour moi 2 est plus petit que 17...
Il semble que le test se fasse sur le 1er caractère seulement (2 >1).

Le plus curieux est que cela fonctionne correctement sur le même spip, mêmes
données, autre serveur.
seules différences (apparemment) :
- version "bug" :
    spip 1.6
    mysql-3.23.41-1
    php-4.1.2-7.2.6
-version "ok" :
    spip 1.6
    mysql-3.23.49-3
    php-4.1.2-7

Est-ce un bug de php ? de mysql ? de spip ?

Merci,
Sylvain Nogues

Le plus curieux est que cela fonctionne correctement sur le même spip, mêmes
données, autre serveur.
seules différences (apparemment) :
- version "bug" :
    spip 1.6
    mysql-3.23.41-1
    php-4.1.2-7.2.6
-version "ok" :
    spip 1.6
    mysql-3.23.49-3
    php-4.1.2-7

Est-ce un bug de php ? de mysql ? de spip ?

C'est lié à MySQL certainement. Ceci dit je ne crois pas que ce soit une
bonne idée de tester des inégalités sur l'id_rubrique (c'est un numéro
attribué arbitrairement...).

a+

Antoine.

C'est lié à MySQL certainement. Ceci dit je ne crois pas que ce soit une
bonne idée de tester des inégalités sur l'id_rubrique (c'est un numéro
attribué arbitrairement...).

Certes, pas trouvé mieux... attribuer un mot-clé à ces rubriques que je veux
sélectionner ? Ok, c'est plus élégant.

Ceci dit, cela me semble bien un bug... A mentionner quelque part dans la
doc (au moins : manipuler avec précaution) ?

Certes, pas trouvé mieux... attribuer un mot-clé à ces rubriques que je veux
sélectionner ? Ok, c'est plus élégant.

Ceci dit, cela me semble bien un bug... A mentionner quelque part dans la
doc (au moins : manipuler avec précaution) ?

Pas vraiment un bug, il semble juste que la comparaison se fasse sur des
chaînes de caractères (et la chaîne "17" est avant la chaîne "2")...

a+

Antoine.

> Ceci dit, cela me semble bien un bug... A mentionner quelque part dans

la

> doc (au moins : manipuler avec précaution) ?

Pas vraiment un bug, il semble juste que la comparaison se fasse sur des
chaînes de caractères (et la chaîne "17" est avant la chaîne "2")...

oui, mais ce n'est pas mentionné dans la doc, et si cette fonctionnalité
(test inégalité sur des id_rubrique) existe et est mentionnée dans la doc,
je trouve délicat qu'elle n'ait pas le même comportement selon la version de
mysql. Bref, j'ai mis un bon moment avant de trouver que c'était là le
problème !

Merci,
Sylvain

On mardi, déc 2, 2003, at 20:07 Asia/Muscat, Antoine wrote:

Certes, pas trouvé mieux... attribuer un mot-clé à ces rubriques que je veux
sélectionner ? Ok, c'est plus élégant.

Ceci dit, cela me semble bien un bug... A mentionner quelque part dans la
doc (au moins : manipuler avec précaution) ?

Pas vraiment un bug, il semble juste que la comparaison se fasse sur des
chaînes de caractères (et la chaîne "17" est avant la chaîne "2")...

ben si c'est un bug ! une fonctionnalité qui marchait et ne marche plus ça s'appelle comment ?

c'est également utile lorsqu'on tient compte des numéros de rubriques lors de la création du site. exemple : je crée des secteurs contenant des sous rubriques que je dois "sortir" des affichages classiques, si je les crée à la suite je peux ensuite faire des {id_rubrique>17}

autre application, il se trouve que je veux exclure, par hasard les rubriques 20 à 30, et bien la syntaxe
{id_rubrique<20}{id_rubrique>30} marchait très bien

on peut utiliser d'autres syntaxes, comme les expressions régulières, mais c'est beaucoup moins facile pour les débutants de ce souvenirs de la syntaxe.

Dorian