Vous n'êtes pas identifié(e).
Bonjour, j'ai créé un petit formulaire qui se présente comme ceci
j'aimerais ajouter des conditions et rediriger sur telle ou telle page en fonction du sexe.
j'ai donc fait un autre page php avec les conditions que voici:
et voici le code des pages de redirection:
le problème c'est que lorsque je valide dans firefox
je suis redirigé sur header.php qui devrait me rediriger en fonction du choix sur homme.php ou femme.php. Mais il ne le fait pas firefox reste sur:
J'ai fait tout ça en suivant le tuto, mais je dois mal faire quelque chose, et ne sais pas quoi.
Voila merci à qui voudra bien m'aider
Dernière modification par PhacheP (24-04-2013 06:55:16)
Hors ligne
Bonjour,
Ceci est tout à fait normal car il n'existe pas dans votre formulaire d'élément "sex_select".
Encore une fois et on en revient toujours aux mêmes choses, et ce n'est pas faute de le répéter, lorsque l'on ne vérifie pas la présence de variable attendue et de son contenu, et que l'on se contente tout simplement de présumer de leur existence, on obtient presque invariablement ce genre de résultats.
Cordialement,
Jc
Dernière modification par Jc (23-04-2013 08:44:58)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Bien, j'ai essayer de faire une redirection juste avec le header sans les conditions, ce qui donne
<?
header('location:femme.php')
?>
et la ça marche, seulement, ça n'a aucun interet.
je ne suis pas sur que mon code avec les conditions soit juste car avec un élément <select> qui permet de choisir entre homme ou femme, ça complique un peu les choses.
Sinon, j'ai trouver un post qui parle d'un code BOM. Il est expliquer qu'il faudrait supprimer ce BOM pour que les header fonctionnent correctement en choisissent dans son editeur l'option: UTF-8 sans BOM.
Je travail avec coda 2.0.7 et j'ai bo chercher, je ne trouve pas d'option UTF-8 sans BOM.
Hors ligne
Re bonjour.
Petite question : Avez-vous réellement pris la peine de lire et surtout de comprendre ma réponse?
Cordialement,
Jc.
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Saluton,
@Jc, espèce de jésuite ! Pourquoi tu poses une question dont chacun connaît déjà la réponse ?
@PhacheP, le monsieur Jc te dit que ton <select name="sex"> du formulaire, ne s'appelle pas $_POST['sex_select'] mais bien plus sûrement $_POST['sex']
Voilà, c'est plus clair maintenant ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Merci JC pour ta réponse, j'ai testé plusieurs combinaisons, mais rien ne marche. En fait, je ne sais pas trop comment écrire les conditions pour que en fonction du choix de la personne, il ou elle soit redirigée sur la bonne page.
j'ai fait beaucoup de recherches, j'ai testé plusieurs méthodes, mais rien ne marche.
Hors ligne
Saluton,
@Jc, espèce de jésuite ! Pourquoi tu poses une question dont chacun connaît déjà la réponse ?
@PhacheP, le monsieur Jc te dit que ton <select name="sex"> du formulaire, ne s'appelle pas $_POST['sex_select'] mais bien plus sûrement $_POST['sex']
Voilà, c'est plus clair maintenant ?
j'ai bien compris ce que jc voulait dire, j'ai essayé mais ça ne fonctionne pas:
<?
if($_POST[sex])=='femme'
{
header('location:femme.php');
}
else($_POST[sex])=='homme'
{
header('location:homme.php');
}
exit
?>
Donc ma question est: où est la faute?
Hors ligne
il fo fermer la parenthèse après femme
a++
Hors ligne
D'autre part, une syntaxe aussi approximative laisse augurer d'autres soucis à venir :
else n'attend pas de condition, c'est elseif
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bonjour,
Salut MK, c'est la première fois qu'on me traite de jésuite, ça c'est fait, je ne pourrais plus le dire
@Phache : Si à chaque modification vous modifier autre chose, on va une fois de plus, ne pas s'en sortir. Je dis une fois de plus, car malheureusement c'est une manie chez beaucoup qui viennent sur ce forum.
Votre dernier script est bourré de fautes la bonne syntaxe est je le rappelle : if ( ) { } else { } ou if ( ) { } elseif ( ) { } else { }
Alors pour résoudre votre problème, utilisez votre code initial et apportez UNIQUEMENT la modification nécessaire, et vos problèmes devraient être résolus.
Cordialement,
Jc.
Dernière modification par Jc (23-04-2013 14:15:17)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
En même temps, Jc, jésuite, c'est raccord, non ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
heum parton pour la syntaxe et merci pour votre aide.
<?
if($_POST[sex]=='femme')
{
header('location:femme.php');
}
elseif($_POST[sex]=='homme')
{
header('location:homme.php');
}
exit
?>
c'est mieux comme ça? Mais ça ne fonctionne toujours pas. Comme je l'avais évoqué précédemment est ce que le problème ne vient pas des BOM?
Autre chose, est-il correct d'écrire if($_POST[sex]=='femme') sex étant le nom du select (<select name"sex">) == 'femme' qui est la valeur de option (<option value "femme">)?
Hors ligne
Eurêka ça marche enfin, j'ai effacé tout le script et tout réécris comme vous me l'avez dis et ça marche. Merci beaucoup à tous.
Du coup, j'ai une autre question:
si je rajoute à mon formulaire: <input type"text" name"nom"/> comment faire apparaitre le nom de la personne sur la page de redirection.
J'ai bien tenter un:
$nom=$_post[nom];
echo "$nom";
mais ça ne marche pas ce qui est logique puisque la page sur laquelle nous redirige le header n'a plus de lien avec le formulaire de base.
Dernière modification par PhacheP (23-04-2013 22:06:22)
Hors ligne
Bonjour,
Si vous souhaitez transmettre des paramètres du formulaire à une page redirigée vous n'avez que deux possibilités
- Via l'url => paramètres visibles. Dans ce cas de figure vous n'avez plus besoin de plusieurs page de redirection mais plus que d'une seule avec un front controller à mettre en place.
- Via une mise en cache des paramètres au niveau PHP (paramètres non visibles par l'utilisateur).
Cordialement,
Jc.
Ps: @ Mk, question raccord, c'est vrai ça le fait
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Très bien je vais étudier tout ça, merci à tous, à bientôt; enfin pas trop tôt j'espère .
Hors ligne