|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 12 ![]() |
Bonjour tout le monde,
Je développe un petit shop en PHP pour un encaveur de ma région. Mon shop est quasi fonctionnel (panier, etc.) et tourne sans problème sous Firefox. J'ai rapidement vérifié s'il tournait sous Explorer (7) et sous Safari et là, grosse surprise, mon panier ne s'active pas (session et création d'un array). Il n'affiche aucune erreur, mais il reste vide. J'ai donc testé si mes paramètres étaient bien passés à la page du panier et c'est le cas, par contre, un var_dump du tableau retourne une valeur null : donc il ne doit pas se créer ! Mais pourquoi mon code fonctionne-t-il sous Firefox ? La syntax (PHP) peut-elle être différente entre les navigateur Quelqu'un aurait-il une piste ? Merci d'avance pour votre aide ! |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : juin 2002 Messages : 44 ![]() |
Utilisez vous les Frames par hasard ?
Autrement, le code php s'exécute côté serveur, du coup il est indépendant du navigateur. L'HTML généré par contre l'est beaucoup moins.
__________________
Merci Have Fun !!! Fincom |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 12 ![]() |
Non, je n'utilises pas de Frames !
C'est très troublant, car je n'obtiens aucun message d'erreur ! Merci de votre aide ! |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : juin 2002 Messages : 44 ![]() |
Si vous pouvez envoyer une partie de votre code, il serait plus facile de vous aider par la suite.
__________________
Merci Have Fun !!! Fincom |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 12 ![]() |
Je progresse dans mes recherches.
Il se trouve que je passe en post les paramètres nécessaires (id et qté). Sur ma page panier.php, je teste tout d'abord si la valeur du bouton a été passée et c'est là que le bas blesse. Code de la page catalogue : <input type="image" src="../images/shop_caddie.jpg" name='action' value='Cder' onclick="this.form.submit();" > Code de la page panier : if (isset($_POST['action']) and $_POST['action']=='Cder'){...} Firefox interprète correctement le code et comprend que le bouton action a bien été clické. Sur IE7, il passe à côté. En supprimant mon if de la page panier, ca fonctionne nickel. Un idée pourquoi ? |
|
|
00
|
|
|
#6 | ||
|
Membre du Club
![]() Inscription : juin 2002 Messages : 44 ![]() |
Votre problème est bien relié au navigateur, et c'est un problème qui relève du traitement HTML que PHP. Je m'explique :
Firefox considère le champ de type INPUT IMAGE comme un champs de formulaire. La variable "action" et sa valeur sont transmise lors de l'envoi du formulaire. IE7 ne considère pas INPUT IMAGE comme un champs de formulaire,et donc ne transmet pas la variable "action", ce qui explique que si vous enlevez la condition IF de votre code php, donc si vous faites abstraction de la variable "action", alors le script est exécuté correctement. La solution si vous avez uniquement un seul bouton qui déclenche l'envoi du formulaire serait: Code :
__________________
Merci Have Fun !!! Fincom |
||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 12 ![]() |
Fantastique !
Effectivement, ca passe nickel également sur IE7 et Safari ! Merci pour votre aide précieuse et bonne soirée ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com