Pb php formulaire
isis59
-
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila j'ai actuelement un formulaire qui envoie sur une page en php, et une fonction dans cette page qui se sert des infos du formulaire. Le probleme est que lorsque je fait un isset($_POST[diplome]) il renvoie toujours false alors que la donée est bel et bien envoyée. Quelqu'un pourait-il m'aider pliz ^^merci d'avance
dans mon formulaire :
<td colspan='2' align="left">
<select name="diplome[]" MULTIPLE SIZE=5>
<?php
$requeteSql = "select * from diplome";
$resSql = SQLSelect($requeteSql);
while( $row = mysql_fetch_assoc($resSql))
{
print ("<option value=".$row['id_diplome'].">".$row['nom_diplome']."</option>");
}
?>
</select>
</td>
et dans la page php :
if(isset($_POST['diplome']))
{
$Str_Tables = $Str_Tables.", formation ";
$SQL = $SQL." and jeune.id_jeune = formation.id_jeune AND (";
foreach($Id_diplome as $valeur) {
$SQL = $SQL." formation.id_diplome = ".$valeur." OR";
}
$SQL = $SQL." 0=1)";
}
voila j'ai actuelement un formulaire qui envoie sur une page en php, et une fonction dans cette page qui se sert des infos du formulaire. Le probleme est que lorsque je fait un isset($_POST[diplome]) il renvoie toujours false alors que la donée est bel et bien envoyée. Quelqu'un pourait-il m'aider pliz ^^merci d'avance
dans mon formulaire :
<td colspan='2' align="left">
<select name="diplome[]" MULTIPLE SIZE=5>
<?php
$requeteSql = "select * from diplome";
$resSql = SQLSelect($requeteSql);
while( $row = mysql_fetch_assoc($resSql))
{
print ("<option value=".$row['id_diplome'].">".$row['nom_diplome']."</option>");
}
?>
</select>
</td>
et dans la page php :
if(isset($_POST['diplome']))
{
$Str_Tables = $Str_Tables.", formation ";
$SQL = $SQL." and jeune.id_jeune = formation.id_jeune AND (";
foreach($Id_diplome as $valeur) {
$SQL = $SQL." formation.id_diplome = ".$valeur." OR";
}
$SQL = $SQL." 0=1)";
}
A voir également:
- Pb php formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
11 réponses
désolé pour celui qui a posté une reponse, il y a un bug j'ai beau rafraichir et faire tout ce que je veux, cette reponse ne s'affiche pas
ah c'est bon apres avoir repondu j'ai pu lire ta reponse ^^
si j'enleve les crochet, ça ne fonctionne pas non plus. mais les crochets servent a declare diplome comme un tableau, leur present est donc normale je pense
si j'enleve les crochet, ça ne fonctionne pas non plus. mais les crochets servent a declare diplome comme un tableau, leur present est donc normale je pense
foreach($Id_diplome as $valeur)
$Id_diplome tu le récupères ou ?
il faut que tu fasses:
et si dans ta config du php.ini tu as Register_Global à OFF, ce qui est par défaut, les variables postées par un formulaire doivent être récupérées par $variable=$_POST['variable']
$Id_diplome tu le récupères ou ?
il faut que tu fasses:
if(isset($_POST['diplome'])) { $Id_diplome=$_POST['diplome']; //car ta liste poste un array sous le name=diplome[] //avant ta boucle foreach
et si dans ta config du php.ini tu as Register_Global à OFF, ce qui est par défaut, les variables postées par un formulaire doivent être récupérées par $variable=$_POST['variable']
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
les autres valeur envoyées pa le formulaires fonctionnent bien donc ça ne viennent pas de php.ini
et le Id_diplome vient d'ici :
ma fonction : RechercheAvancee ($Id_SecteurRecherche, $Id_permis, $Id_programme, $AgeMaxi, $AgeMini, $duree_experience, $niveau_formation, $RTH, $Id_langueparlee, $Id_langueecrit, $niveau_parle, $niveau_ecrit, $mr, $mme, $AgeMini, $AgeMaxi, $Id_diplome)
et quand je l'apelle j'ai fait : RechercheAvancee ($_POST['Id_SecteurRecherche'], $_POST['id_permis'], $_POST['id_programme'], $_POST['AgeMaxi'], $_POST['AgeMini'], $_POST['duree_experience'], $_POST['niveau_formation'], $_POST['rth'], $_POST['id_langueparlee'], $_POST['id_langueecrit'], $_POST['niveau_parle'], $_POST['niveau_ecrit'], $mr, $mme, $_POST['AgeMini'], $_POST['AgeMaxi'], $_POST['diplome']);
tout fonctionne sauf ce $_POST['diplome']
et le Id_diplome vient d'ici :
ma fonction : RechercheAvancee ($Id_SecteurRecherche, $Id_permis, $Id_programme, $AgeMaxi, $AgeMini, $duree_experience, $niveau_formation, $RTH, $Id_langueparlee, $Id_langueecrit, $niveau_parle, $niveau_ecrit, $mr, $mme, $AgeMini, $AgeMaxi, $Id_diplome)
et quand je l'apelle j'ai fait : RechercheAvancee ($_POST['Id_SecteurRecherche'], $_POST['id_permis'], $_POST['id_programme'], $_POST['AgeMaxi'], $_POST['AgeMini'], $_POST['duree_experience'], $_POST['niveau_formation'], $_POST['rth'], $_POST['id_langueparlee'], $_POST['id_langueecrit'], $_POST['niveau_parle'], $_POST['niveau_ecrit'], $mr, $mme, $_POST['AgeMini'], $_POST['AgeMaxi'], $_POST['diplome']);
tout fonctionne sauf ce $_POST['diplome']
Je confirme il ne faut pas de [] dans le name d'un select MULTIPLE
si tu le mets ça fait un tableau a deux dimensions
fais un :
echo '<pre>';
print_r($_POST);
echo '</pre>';
pour voir ce que tu reçoit
si tu le mets ça fait un tableau a deux dimensions
fais un :
echo '<pre>';
print_r($_POST);
echo '</pre>';
pour voir ce que tu reçoit
j'ai retiré les [] et voila le tableau $_POST
Array
(
[Id_SecteurRecherche] => 36
[niveau_formation] => 0
[duree_experience] => 0
[id_permis] => 0
[rth] => 0
[AgeMini] => 16
[AgeMaxi] => 26
[id_langueecrit] => 0
[niveau_ecrit] => 0
[id_langueparlee] => 0
[niveau_parle] => 0
[id_programme] => Indifférent
[Btn_rechercher_x] => 44
[Btn_rechercher_y] => 7
)
donc tjr pas de diplome comme vous le voyez. je vois pas trop la :s
Array
(
[Id_SecteurRecherche] => 36
[niveau_formation] => 0
[duree_experience] => 0
[id_permis] => 0
[rth] => 0
[AgeMini] => 16
[AgeMaxi] => 26
[id_langueecrit] => 0
[niveau_ecrit] => 0
[id_langueparlee] => 0
[niveau_parle] => 0
[id_programme] => Indifférent
[Btn_rechercher_x] => 44
[Btn_rechercher_y] => 7
)
donc tjr pas de diplome comme vous le voyez. je vois pas trop la :s
bon j'ai réssayé, et mintnant on me dit :
Warning: Invalid argument supplied for foreach() in /home/missionl/public_html/cvtheque/MissionLocale/Recherches/Milo_FonctionRechercheAvancee.php on line 40
Warning: Invalid argument supplied for foreach() in /home/missionl/public_html/cvtheque/MissionLocale/Recherches/Milo_FonctionRechercheAvancee.php on line 40
c'est bon ça fonctionne,il fallait simplement remplacer le + par >= dans le foreach ^^
Meci beaucoup et bonne journée a tous
Meci beaucoup et bonne journée a tous