PHP include form, données $_POST invisibles
Résolu
babafall
-
maka54 Messages postés 698 Date d'inscription Statut Membre Dernière intervention -
maka54 Messages postés 698 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis bloqué dans mon code PHP. En fait j'ai une page main où j'inclue d'autres contenus par include selon l'action sur la page main ou sur les pages incluses.
-----code caissier.php---
...
<div id="sousmenu1" style="display:none">
<div class="sousmenu">
<a href="caissier.php?onglet=1&action=1">Inscire</a>
</div>
<div class="sousmenu">
<a href="caissier.php?onglet=1&action=2">Reinscrire</a>
</div>
</div>
...
<?php
if(!isset($_GET['onglet']) or $_GET['onglet'] == 2)
include_once("views/paiement.php");
else
if($_GET['onglet'] == 1){
switch($_GET['action']){
case 1 : include_once("views/inscription.php"); break;
case 2 : include_once("views/reinscription.php"); break;
}
}
?>
...
-----fin code main -----
En cliquant sur le premier lien, je parviens à inclure la page inscription.php qui est un formulaire.
-----inscription.php------
<form method='post' action='controllers/insert.php' enctype='text/plain' class='form_inscription'>
<?php if(!empty($out_message)) echo"<p> $out_message </p>"; ?>
<input type='hidden' name='page_inscription' value='../caissier.php?onglet=1&action=1'/>
<label>Niveau : </label>
<select name='niveau_eleve'>
<?php
$sortie = printClasse();
echo $sortie;
?>
</select>
</br>
<fieldset class ='fieldset_eleve'>
<legend>Filiation élève</legend>
<label id='prenom' class='label'>Prénom : </label>
<input type='text' name='prenom' id='prenom' class='input_text'/>
...
<input type='submit' value='' class='bouton_save'/>
</form>
------fin code inscription.php------
Mon problème est que la page qui doit recevoir les données envoyées par post (insert.php) via ce formulaire ne reçoit pas de variables $_POST.
S'il vous plait, quelqu'un a t-il rencontré un problème pareil.
Merci d'avance
Je suis bloqué dans mon code PHP. En fait j'ai une page main où j'inclue d'autres contenus par include selon l'action sur la page main ou sur les pages incluses.
-----code caissier.php---
...
<div id="sousmenu1" style="display:none">
<div class="sousmenu">
<a href="caissier.php?onglet=1&action=1">Inscire</a>
</div>
<div class="sousmenu">
<a href="caissier.php?onglet=1&action=2">Reinscrire</a>
</div>
</div>
...
<?php
if(!isset($_GET['onglet']) or $_GET['onglet'] == 2)
include_once("views/paiement.php");
else
if($_GET['onglet'] == 1){
switch($_GET['action']){
case 1 : include_once("views/inscription.php"); break;
case 2 : include_once("views/reinscription.php"); break;
}
}
?>
...
-----fin code main -----
En cliquant sur le premier lien, je parviens à inclure la page inscription.php qui est un formulaire.
-----inscription.php------
<form method='post' action='controllers/insert.php' enctype='text/plain' class='form_inscription'>
<?php if(!empty($out_message)) echo"<p> $out_message </p>"; ?>
<input type='hidden' name='page_inscription' value='../caissier.php?onglet=1&action=1'/>
<label>Niveau : </label>
<select name='niveau_eleve'>
<?php
$sortie = printClasse();
echo $sortie;
?>
</select>
</br>
<fieldset class ='fieldset_eleve'>
<legend>Filiation élève</legend>
<label id='prenom' class='label'>Prénom : </label>
<input type='text' name='prenom' id='prenom' class='input_text'/>
...
<input type='submit' value='' class='bouton_save'/>
</form>
------fin code inscription.php------
Mon problème est que la page qui doit recevoir les données envoyées par post (insert.php) via ce formulaire ne reçoit pas de variables $_POST.
S'il vous plait, quelqu'un a t-il rencontré un problème pareil.
Merci d'avance
A voir également:
- PHP include form, données $_POST invisibles
- Fuite données maif - Guide
- Easy php - Télécharger - Divers Web & Internet
- Supprimer les données de navigation - Guide
- Trier des données excel - Guide
- Sauvegarde des données - Guide
9 réponses
Bonjour
Mon problème est que la page qui doit recevoir les données envoyées par post (insert.php) via ce formulaire ne reçoit pas de variables $_POST.
Comment l'as-tu vérifié ? À première vue, ton formulaire est correct. As-tu fait un print_r($_POST); au tout début de insert.php ?
Mon problème est que la page qui doit recevoir les données envoyées par post (insert.php) via ce formulaire ne reçoit pas de variables $_POST.
Comment l'as-tu vérifié ? À première vue, ton formulaire est correct. As-tu fait un print_r($_POST); au tout début de insert.php ?
Bonjour,
Voici le code qui m'a permis de vérifier:
---- insert.php-----
$out_message ='';
print_r ($_POST);
Voici le code qui m'a permis de vérifier:
---- insert.php-----
$out_message ='';
print_r ($_POST);
Voilà tout ce que j'ai mis dans insert.php
<?php
$out_message ='';
print_r ($_POST);
if(isset($_POST['inscription'])){
$out_message .='Enregistrement reussi.';
header('Location: ../caissier.php?onglet=1&action=1');
}
echo "La variable POST nerepond pas.";
?>
le résultat que j'obtiens:
Array ( ) La variable POST nerepond pas.
<?php
$out_message ='';
print_r ($_POST);
if(isset($_POST['inscription'])){
$out_message .='Enregistrement reussi.';
header('Location: ../caissier.php?onglet=1&action=1');
}
echo "La variable POST nerepond pas.";
?>
le résultat que j'obtiens:
Array ( ) La variable POST nerepond pas.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
À deuxième vue, c'est encore correct (sauf </br> au lieu de <br /> mais bon...).
Comme la vérification semble correcte aussi, peux-tu faire afficher le formulaire et donner le code source de la page générée dans un fichier sur cjoint.com ou autre ?
Comme la vérification semble correcte aussi, peux-tu faire afficher le formulaire et donner le code source de la page générée dans un fichier sur cjoint.com ou autre ?
<div class='menu_text'>Formulaire Inscription</div>
<form method='post' action='controllers/insert.php' enctype='text/plain' class='form_inscription'>
<?php if(!empty($out_message)) echo"<p> $out_message </p>"; ?>
<input type='hidden' name='page_inscription' value='../caissier.php?onglet=1&action=1'/>
<label>Niveau : </label>
<select name='niveau_eleve'>
<?php
$sortie = printClasse();
echo $sortie;
?>
</select>
<br/>
<fieldset class ='fieldset_eleve'>
<legend>Filiation élève</legend>
<label id='prenom' class='label'>Prénom : </label>
<input type='text' name='prenom' id='prenom' class='input_text'/>
<br/>
<label id='nom' class='label'>Nom : </label>
<input type='text' name='nom' id='nom' class='input_text'/>
<br/>
<label id='date_naiss'>Date de naiss. : </label>
<input type='date' id='date_naiss' name='date_naiss' class='input_text'/>
<br/>
<label id='lieu_naiss'>Lieu de naiss. : </label>
<input type='text' id='lieu_naiss' name='lieu_naiss' class='input_text'/>
<br/>
<label id='cas_social' class='label'>Cas social : </label>
<input type='checkbox' id='cas_social' name='cas_social' onclick='afficheSuite(this)'/>
<br/>
<div id='cas_social_checked' style='display:none'>
<label id='mensualite' class='label'>Mensualité : </label>
<input type='number' name='mensualite' id='mensualite' class='input_text'/>
<br/>
</div>
</fieldset>
<fieldset class ='fieldset_tuteur'>
<legend>Filiation tuteur</legend>
<label id='prenom_tuteur' class='label'>Prénom : </label>
<input type='text' name='prenom_tuteur' id='prenom_tuteur' class='input_text'/>
<br/>
<label id='nom_tuteur' class='label'>Nom : </label>
<input type='text' name='nom_tuteur' id='nom_tuteur' class='input_text'>
<br/>
<label id='tel_mobile' class='label'>Num. mobile : <img src=></label>
<input type='tel' name='tel_mobile' id='tel_mobile' placeholder='775158718' required class='input_text'>
<br/>
</fieldset>
<br/>
<input type='submit' value='' class='bouton_save'/>
<br/>
</form>
<form method='post' action='controllers/insert.php' enctype='text/plain' class='form_inscription'>
<?php if(!empty($out_message)) echo"<p> $out_message </p>"; ?>
<input type='hidden' name='page_inscription' value='../caissier.php?onglet=1&action=1'/>
<label>Niveau : </label>
<select name='niveau_eleve'>
<?php
$sortie = printClasse();
echo $sortie;
?>
</select>
<br/>
<fieldset class ='fieldset_eleve'>
<legend>Filiation élève</legend>
<label id='prenom' class='label'>Prénom : </label>
<input type='text' name='prenom' id='prenom' class='input_text'/>
<br/>
<label id='nom' class='label'>Nom : </label>
<input type='text' name='nom' id='nom' class='input_text'/>
<br/>
<label id='date_naiss'>Date de naiss. : </label>
<input type='date' id='date_naiss' name='date_naiss' class='input_text'/>
<br/>
<label id='lieu_naiss'>Lieu de naiss. : </label>
<input type='text' id='lieu_naiss' name='lieu_naiss' class='input_text'/>
<br/>
<label id='cas_social' class='label'>Cas social : </label>
<input type='checkbox' id='cas_social' name='cas_social' onclick='afficheSuite(this)'/>
<br/>
<div id='cas_social_checked' style='display:none'>
<label id='mensualite' class='label'>Mensualité : </label>
<input type='number' name='mensualite' id='mensualite' class='input_text'/>
<br/>
</div>
</fieldset>
<fieldset class ='fieldset_tuteur'>
<legend>Filiation tuteur</legend>
<label id='prenom_tuteur' class='label'>Prénom : </label>
<input type='text' name='prenom_tuteur' id='prenom_tuteur' class='input_text'/>
<br/>
<label id='nom_tuteur' class='label'>Nom : </label>
<input type='text' name='nom_tuteur' id='nom_tuteur' class='input_text'>
<br/>
<label id='tel_mobile' class='label'>Num. mobile : <img src=></label>
<input type='tel' name='tel_mobile' id='tel_mobile' placeholder='775158718' required class='input_text'>
<br/>
</fieldset>
<br/>
<input type='submit' value='' class='bouton_save'/>
<br/>
</form>
$out_message ='';
print_r ($_POST);
if(isset($_POST['page_inscription'])){
$out_message .='Enregistrement reussi.';
header('Location: ../caissier.php?onglet=1&action=1');
}
echo " La variable POST ne repond pas.";
print_r ($_POST);
if(isset($_POST['page_inscription'])){
$out_message .='Enregistrement reussi.';
header('Location: ../caissier.php?onglet=1&action=1');
}
echo " La variable POST ne repond pas.";
En résumé, enctype='text/plain' ne va pas avec la méthode post?
Merci encore
tu envoies tes données en text brut,
exemple d'utilisation : un formulaire de contact à envoyer par mail
avec enctype='multipart/form-data'
tu peux uploader des fichiers avec le champ file
si tu n'as besoin d'aucun des 2, tu n'as pas besoin de mettre l'attribut enctype