|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre à l'essai
![]() Étudiant Inscription : mars 2008 Messages : 80 ![]() |
Bonjour,
Voilà j'ai un petit souci j'essaie de faire un test avec un if... jusque là, tout va bien... Un de mes premiers tests est le suivant : Code :
if ($lib == 'Tarif réduit'){echo" Accessible pour les -18ans, demandeurs d'emploi, 3ème âge, familles nombreuses (sous présentation d'une carte)."; } Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Développeur Web Inscription : août 2006 Messages : 2 700 ![]() |
Bonjour,
Deux possibilités : - utiliser les guillemets doubles - echapper l'apostrophe avec un antislash http://thierrylhomme.developpez.com/php/ultra_php/ |
|
|
00
|
|
|
#3 | ||
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 22 ![]() |
Simplement parce que tu fermes trop top ton expression à tester.
Ici ton if va tester si $lib == 'Carnet d'. En plus de cela, il ne comprendra pas pourquoi tu rajoutes après ça onnement. Si tu veux que ton test fonctionne, essaye avec des doubles quotes : Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre à l'essai
![]() Étudiant Inscription : mars 2008 Messages : 80 ![]() |
J'ai bien testé les 2 solutions... que ce soit les guillemets doubles et l'antislash... aucun des deux ne me réécris ce dont j'ai besoin pour le Carnet d'abonnement...
Et c'est bien pour ça que je voulais savoir si vous aviez d'autres idées... |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 19 ![]() |
Fais un print $lib pour voir ce qu'il y a dedans
|
|
|
00
|
|
|
#6 |
|
Membre à l'essai
![]() Étudiant Inscription : mars 2008 Messages : 80 ![]() |
Et c'est bien Carnet d'abonnement qui en ressort...
Je vois vraiment pas ce qui cloche, et ça me bloque... |
|
|
00
|
|
|
#7 | ||
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 19 ![]() |
Essaye
Code :
|
||
|
|
00
|
|
|
#8 |
|
Membre à l'essai
![]() Étudiant Inscription : mars 2008 Messages : 80 ![]() |
La couille dans mon code apparaît clairement pour le carnet d'abonnement...
Mais pourtant, ça me ressort bien ça quand je fais un echo... c'est à n'y rien comprendre... Même en testant avec un switch, ça ne marche pas... |
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 22 ![]() |
Où et comment initialises-tu $lib?
|
|
|
00
|
|
|
#10 | ||
|
Membre à l'essai
![]() Étudiant Inscription : mars 2008 Messages : 80 ![]() |
Code :
|
||
|
|
00
|
|
|
#11 |
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 22 ![]() |
Essaie d'enlever les caractères qui peuvent poser problème dans ta chaîne, en commençant par le quote et en continuant par l'espace.
Utilises un str_replace sur ton $lib avant de faire ton test, et édites ton test qui devra(it) être comme ça : |
|
|
00
|
|
|
#12 | ||
|
Futur Membre du Club
![]() Inscription : avril 2008 Messages : 19 ![]() |
Arf, c'est vraiment pas terrible ce que tu fais !
Comment ont été saisies les infos dans la base ? Il y a peut être eu un htmlspecialchars() ? Faire un test sur du texte, c'est pas top, le mieux et de tester sur un chiffre (int). Essaye Code :
|
||
|
|
00
|
|
|
#13 | |
![]() ![]() Développeur Web Inscription : août 2006 Messages : 2 700 ![]() |
Citation:
Déterminer les traitements par un test sur un libellé, c'est vraiment pas top. Il faut tester sur un code, moins parlant mais plus strict, et tu peux ensuite récupérer le libellé par une simple table de correspondance. --- edit --- Sorry je m'enflamme, c'est exactement ce qui est prôné par Dlteck. Les grands esprits se rencontrent. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com