[php]probleme de variable ou de fonction "if&
Résolu/Fermé
A voir également:
- [php]probleme de variable ou de fonction "if&
- Fonction si et - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fonction moyenne excel - Guide
- Retour a la ligne php ✓ - Forum PHP
5 réponses
Slt,
Déjà à froid :
Traitement 1 : le </div> ne ferme rien - pas de <div> en tête de ton code.
Vérifie bien ton code - on voit des affectation qui remplacent des tests d'égalité (if($_GET['problem']=oui) par exemple).
a+,
Déjà à froid :
Traitement 1 : le </div> ne ferme rien - pas de <div> en tête de ton code.
Vérifie bien ton code - on voit des affectation qui remplacent des tests d'égalité (if($_GET['problem']=oui) par exemple).
a+,
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
7 mars 2009 à 17:11
7 mars 2009 à 17:11
slt,
pense deja à utiliser les balises code pour nous afficher ton script ce sera plus facile pour nous ...
sur ta page qui est censée s'afficher met au tout debut un print_r($_post) pour voir deja si tu recupere bien toutes tes valeurs.
ensuite si tu a une page blanche verifie les " et les ; 99 fois sur 100 si 'en a pas oublié ou mis en trop, 99 fois sur 100 c'est de la que viens le bug.
Car il me semble qu'il manque pas mal de ; à la fin de tes lignes en php (d'ou l'interet d'utiliser les balises codes.. ;-) )
pense deja à utiliser les balises code pour nous afficher ton script ce sera plus facile pour nous ...
sur ta page qui est censée s'afficher met au tout debut un print_r($_post) pour voir deja si tu recupere bien toutes tes valeurs.
ensuite si tu a une page blanche verifie les " et les ; 99 fois sur 100 si 'en a pas oublié ou mis en trop, 99 fois sur 100 c'est de la que viens le bug.
Car il me semble qu'il manque pas mal de ; à la fin de tes lignes en php (d'ou l'interet d'utiliser les balises codes.. ;-) )
oui exact pour les balises codes désolé je les ai zappées. pour les ' et ; j'en ai déjà rajouter à certain endroit ou il manquait mais soit j'en oublie encore ou il y en a en trop qui m'échappent... Bon si non vu les premiers commentaires il n'y a pas l'air d'avoir de grosse abérations dans mon code alors ??
Merci pour le coup de main
Merci pour le coup de main
Bonjour
Je n'ai pas trop cherché à comprendre ton code, mais j'y vois unproblème. Passer une longue liste de paramètres par l'URL me semble une très mauvaise méthode, il vaut mieux utiliser les sessions. Surtout que tu n'encodes pas tes variables avec urlencode, tu auras de gros problèmes dès qu'il y aura des caractères spéciaux dans un des champs
Je n'ai pas trop cherché à comprendre ton code, mais j'y vois unproblème. Passer une longue liste de paramètres par l'URL me semble une très mauvaise méthode, il vaut mieux utiliser les sessions. Surtout que tu n'encodes pas tes variables avec urlencode, tu auras de gros problèmes dès qu'il y aura des caractères spéciaux dans un des champs
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Remarque 1 :
page initiale :
<?php if($_GET['problem']=oui)
{echo "Suite à un problème technique, merci de réitérer votre demande. Nous nous excusons de ce désagrément.";}?>
</p>
Ok mais il faudrait ensuite mettre un ELSE adéquat pour différencier cette section avec le reste - dans le cas contraire, le reste est du code est interprété et ne tient pas absolument pas compte de cette interception d'exception.
Remarque 2 :
if($_GET['problem']=oui) est une affectation et non un test d'égalité -> le test d'égalité est un == et pas un = !!.
Remarque 3 :
Si ta page n'affiche rien en Traitement 1, c'est que logiquement $paypal ne vérifie aucune de tes conditions et qu'il y a surement un problème dans tes passages de paramètres en POST.
Si c'était "a froid" hier soir c'est que malheureusement ton code est assez mal structuré.
Je vais copier ton code et essayer de le corriger sur ma bécane.
a+.
Remarque 1 :
page initiale :
<?php if($_GET['problem']=oui)
{echo "Suite à un problème technique, merci de réitérer votre demande. Nous nous excusons de ce désagrément.";}?>
</p>
Ok mais il faudrait ensuite mettre un ELSE adéquat pour différencier cette section avec le reste - dans le cas contraire, le reste est du code est interprété et ne tient pas absolument pas compte de cette interception d'exception.
Remarque 2 :
if($_GET['problem']=oui) est une affectation et non un test d'égalité -> le test d'égalité est un == et pas un = !!.
Remarque 3 :
Si ta page n'affiche rien en Traitement 1, c'est que logiquement $paypal ne vérifie aucune de tes conditions et qu'il y a surement un problème dans tes passages de paramètres en POST.
Si c'était "a froid" hier soir c'est que malheureusement ton code est assez mal structuré.
Je vais copier ton code et essayer de le corriger sur ma bécane.
a+.
bon alors page par je page on y verra peut être plus clair. Les sessions je me suis penché dessus mais je n'ai pas encore tout compris. Sur le principe c'est à peu près clair mais par exemple je ne vois pas comment créer les variables dans une sessions à partir du formulaire.
Pour la page initial j'ai fait quelques modif qui je pensait aurait du résoudre quelques problème, pour le double égale c'était de l'inatention quand j'ai remis le code pour le poster, après avoir essayer une manip.
en fait la page initial sert en cas de problème, le visiteur sera renvoyer dessus pour corriger sa demande c'est pour quoi, pour lui éviter de retaper toutes les infos mais d'avoir seulement à vérifier les infos qu'il à rentré, je veux récupérer ses infos et les "pré-afficher" dans le formulaire.
donc voci ce que j'ai changer sur la première, mais je ne sais pas si cela rend les choses plus claires...
Pour la page initial j'ai fait quelques modif qui je pensait aurait du résoudre quelques problème, pour le double égale c'était de l'inatention quand j'ai remis le code pour le poster, après avoir essayer une manip.
en fait la page initial sert en cas de problème, le visiteur sera renvoyer dessus pour corriger sa demande c'est pour quoi, pour lui éviter de retaper toutes les infos mais d'avoir seulement à vérifier les infos qu'il à rentré, je veux récupérer ses infos et les "pré-afficher" dans le formulaire.
donc voci ce que j'ai changer sur la première, mais je ne sais pas si cela rend les choses plus claires...
<?php if(isset($_GET['nom'])AND isset($_GET['prenom'])AND isset($_GET['adresse'])AND isset($_GET['codepostale'])AND isset($_GET['ville'])AND isset($_GET['mobile'])AND isset($_GET['yourmail'])AND isset($_GET['nbprevente'])AND isset($_GET['paypal'])) { $nom=$_GET['nom']; $prenom=$_GET['prenom']; $adresse=$_GET['adresse']; $codepostale=$_GET['codepostale']; $ville=$_GET['ville']; $mobile=$_GET['mobile']; $yourmail=$_GET['yourmail']; $nbprevente=$_GET['nbprevente']; $paypal=$_GET['paypal']; } { $nom=$_GET['nom']; $prenom="votre prenom"; $adresse="votre adresse"; $codepostale="votre code postale"; $ville="la ville où vous habitez"; $mobile="votre numéro de mobile"; $yourmail="votre e-mail"; $nbprevente="le nombre de prévente voulu"; $paypal="0"; } ?> <div id="contenu" class="texte"> <p> <?php if(isset($_GET['problem'])) {echo "Suite à un problème technique, merci de réitérer votre demande. Nous nous excusons de ce désagrément.";}?> </p> <form method="POST" action="../dvd/traitement.php/"> <p> <label>Date : <input type="text" name='date' value="jj/mm/aaaa" size="9" maxlength="10"/>*</label> </p> <p> <label>Votre nom : <input type="text" name='nom'value="<?php$nom?>"/>*</label> <label>Votre prénom : <input type="text" name='prenom' value="<?php$prenom?>"/>* size="20"/>*</label> </p> <p> <label>Adresse : <input type="text" name='adresse' value="<?php$adresse?>" size="40"/>*</label> </p> <p> <label>Code postale : <input type="text" name='codepostale' value="<?php$codepostale?>" size="3" maxlength="5"/>*</label> </p> <p> <label>Ville : <input type="text" name='ville' value="<?php$ville?>" size="30"/>*</label> </p> <p> <label>Votre numéro de mobile : <input type="text" name='mobile' value="<?php$mobile?>" size="12" maxlength="14"/>(06-00-00-00-00)</label> </p> <p> <label>Votre adresse mail : <input type="text" name='yourmail' value="<?php$yourmail?>" size="30"/>*</label> </p> <p> <label>Nombre de pré-ventes souhaitées : <input type="text" name='nbprevente' value="<?php$nbprevente?>"size="7"/> </label> </p> <p> <label>Avez-vous un compte paypal : <select type="text" name='paypal'> <option value="1">oui</option> <option value="2">non</option> </select> </label> </p> <p> <input type="submit" value="Commander"/> <input type="reset"/> </p> </form> <p> Ces informations ne seront pas communiquées, elles serviront uniquement pour que nous vous tenions informés de l'évolution de votre commande et lors de votre arrivée le jour de la soirée. </p> </div>
Re,
J'étais en train de manger pour ma part.
Variable SESSION :
L'intérêt : c'est une zone mémoire où tu ranges tes variables.
Quand tu te transfères sur une page autre page PHP, pas besoin donc de gérer le transfert de cette zone et tu récupères quand tu veux tes variables .. ou tu en ajoutes d'autres bien sur.
Un exemple :
Page 1 : (début des traitements)
session_start(); --> Important --> Ouverture SESSION
$_SESSION["prenom"] = $prenom; --> Tu stockes ici toutes tes variables en SESSION
$_SESSION["nom"] = $nom;
etc....
Puis tu te transfères sur la Page 2 :
session_start(); --> Important
$prenom = $_SESSION["prenom"]; --> Tu récupères tes variables stockées
$nom = $_SESSION["nom"];
etc ..
Enfin, à la fin de tes traitements, tu va en Page 3 :
session_start(); --> ouverture SESSION
$_SESSION = array(); --> Initialisation de la zone mémoire
session_destroy(); --> fermeture définitive SESSION
A tu compris le principe ???...
J'étais en train de manger pour ma part.
Variable SESSION :
L'intérêt : c'est une zone mémoire où tu ranges tes variables.
Quand tu te transfères sur une page autre page PHP, pas besoin donc de gérer le transfert de cette zone et tu récupères quand tu veux tes variables .. ou tu en ajoutes d'autres bien sur.
Un exemple :
Page 1 : (début des traitements)
session_start(); --> Important --> Ouverture SESSION
$_SESSION["prenom"] = $prenom; --> Tu stockes ici toutes tes variables en SESSION
$_SESSION["nom"] = $nom;
etc....
Puis tu te transfères sur la Page 2 :
session_start(); --> Important
$prenom = $_SESSION["prenom"]; --> Tu récupères tes variables stockées
$nom = $_SESSION["nom"];
etc ..
Enfin, à la fin de tes traitements, tu va en Page 3 :
session_start(); --> ouverture SESSION
$_SESSION = array(); --> Initialisation de la zone mémoire
session_destroy(); --> fermeture définitive SESSION
A tu compris le principe ???...
7 mars 2009 à 16:48
pour les affectation et les test d'égalité , t'as remarque est un peu flou pour moi mais je vais essayer de voir.
j'ai déjà vérifier mon code plusieurs fois mais je n'ai pas encore résolu le problème...il y a un truc qui doit m'échapper.
En tout cas merci pour ton aide "à froid". ça fait pas mal de code a parcourir.....d'ailleur comme je l'ai déjà si il y a une méthode plus simple je suis preneur...