Combine: Fonction qui vérifie que le paramètre passé

Problèmes, bugs et difficultés rencontrés sur le site.
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Combine: Fonction qui vérifie que le paramètre passé

Message par Dominique »

Tant que j'en suis à rechercher des optimisations, je tombe sur ceci (fonctions_gestion_erreurs.php):

Fonction qui vérifie que le paramètre passé (string) est bien au format int ou int,int,int : "7" "5,4,7" ou "-2" répond : true,
sinon false pour les cas genre "2.3" "5 ; delete * from..." "," "9,"
Un pro de l'expression régulière pour me faire celle-ci en un coup ?
FIXME 9,,8 est retourné comme valable alors que l'on ne voudrait pas


Je propose: preg_match ('/^-?\d+(,-?\d+)*$/', '12,-5')
Il y a peut être un moyen de factoriser le -?\d+ mais je ne connais pas et pas sur que ça prenne moins de caractères
Modifié en dernier par Dominique le 04 avr. 2013, 22:12, modifié 2 fois.
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Je te fais confiance !
Vas-y commit (on verra bien si ça bug)
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Message par Dominique »

commited
pulled dans dev
mais pas tested (je ne sais pas à quoi ça sert)
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Dominique a écrit :commited
pulled dans dev
mais pas tested (je ne sais pas à quoi ça sert)
ça sert par exemple lorsque tu veux plusieurs type de point à l'affichage, l'appel de OL est de la forme :
/exportations/exportation.php?bbox=x&liste_des_id_type=7,8,9,11

ça marche aussi pour les exports pour lesquels on choisi plusieurs type de point et plusieurs massifs possibles
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Message par Dominique »

je veux dire, je te laisse tester :mrgreen:
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Message par Dominique »

Mais http://dev.refuges.info/exportations/ex ... _type=cool marche (et ma modif est dedans)
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Bigre !

Le bug qui révèle un bug qui révèle un autre bug !

Bilan : ta modif est en fait correcte, c'est juste que dans ce cas précis d'exemple que j'ai pris, la fonction verif_multiples_entiers n'était tout simplement pas appelée, et le message d'erreur renvoyé laissait pensé que ça avait été vérifié.

En clair, le bug existe sur www.refuges.info autant qu'il était sur dev ou sur sly (c'est juste que sur sly, ayant le debug activé, ça sortait un gros pâté qui révélait que le problème n'était pas un problème de validation des paramètres, mais d'une requête SQL foireuse) et donc que si quelqu'un tente de passer un truc foireux dans le liste_id_point_type= il peut à l'aise nous vidanger la base.

J'ai a priori corrigé tout ça