Actuliser une partie de formulaire

Fermé
selma - 23 mai 2015 à 20:11
 selma - 23 mai 2015 à 22:23
bonjour,
svp j'ai un probleme dans mon formulaire ,je veux actualiser le formulaire dés que j'effectue une selection(dans la balise select de html),j'ai utilisé onchange mais apres chaque select les champs des inputs le formulaire va etre vidée .svp j'ai besoin de votre aide j'ai besoin de cette solution pour on PFE.
MERCI d'avance.

1 réponse

ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 227
23 mai 2015 à 21:31
'lut, je ne comprends pas: le but est de vider une partie du formulaire, où ton code actuel vide ton formulaire, ce que tu ne veux pas?
Montres-nous ce que tu as tenté.
0
mon code actuel vide le formulaire c'est ce que je ne veux pas je veut garder les infos saisi :
voila la partie de formulaire

<form id ="tache" method="post" action="" name="insription">
<fieldset>
<legend><b> créer le BRQ</b></legend>
<b>site</b><br/>
<input type="text" name="site" maxlength="50" /><br/>
<b>lieu :</b><br/>
<input type="text" name="lieu" maxlength="10"/><br/>
<b>heure :</b><br/>
<input type="time" name="heure" maxlength="10"/><br/>
<b>date :</b><br/>
<input type="date" name="date" maxlength="10"/><br/>
<b>degat corporel</b><br/>
<textarea type="text" name="degat_c" maxlength="10"></textarea><br/>
<b>degat materiel</b><br/>
<textarea type="text" name="degat_m" maxlength="10"></textarea><br/>
<b>degat envirennemental</b><br/>
<textarea type="text" name="degat_e" maxlength="10"></textarea><br/>
<b>fatalite_E :</b><br/>
<input type="text" name="fat_E" maxlength="10"/><br/>
<b>fatalite_N</b><br/>
<input type="text" name="fat_N" maxlength="10"/><br/>
<b>causes :</b><br/>
<input type="text" name="causes" /><br/>
<b>circonstances :</b><br/>
<input type="text" name="circ" maxlength="25"/><br/>
<b>jours perdus:</b><br/>
<input type="text" name="jours_P" maxlength="10"/><br/>

<?php
include("connexion.php");
$req=" select * from tache ";
$req=$connexion->query($req);
$tache1=-1;
if(isset($_POST['tache']))
$tache1=$_POST['tache'];
else $tache1=-1;
echo"<td><select name='tache' id='tache' onchange=\"document.forms['tache'].submit();\">";
while($l=$req->fetch())
{
echo"<option value='".$l['code_tache']."' ";
if($tache1==$l['code_tache'])echo "selected='selected'";
echo">".$l['nom_T']."</option>";
}
echo "</select></td></tr>";
//afficher les risque de la tache selectionner
echo"<tr><td>selectionner le risque :</td>";
$q=" select * from evaluation e,risque r where e.code_risque=r.code_risque and e.code_tache='$tache1'" ;
$q=$connexion->query($q);
$risque1=-1;
if(isset($_POST['risque']))
$tache1=$_POST['tache'];
else $tache1=-1;
echo"<td><select name='risque' id='risque'>";
while($k=$q->fetch())
{
echo"<option value='".$k['code_risque']."' ";
if($risque1==$k['code_risque'])echo "selected='selected'";
echo">".$k['nom_R']."</option>";
}
echo "</select></td></tr>";
?>
<td><input type="submit" value="enregistrer" /></td>
</fieldset>
</form>
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 227 > selma
23 mai 2015 à 22:03
Si tu veux conserver l'actualisation de la page à chaque sélection, il faut juste pour chaque élément de formulaire remettre leur valeur associée reçue par PHP; exemple:
echo '<input type="text" name="site" maxlength="50" value="' . (isset($_POST['site'])?$_POST['site']:'') . '" />';

Ceci remplaçant le champ concerné.
Au passage, dans l'état actuel des choses, je peux détruire ou altérer intégralement toutes tes bases de données: tu as une possibilité d'injection SQL en mettant directement
$_POST['tache']
/
$tache1
dans ta requête. Utilise les requêtes préparées à paramètres à la place (avec
$connexion->prepare
et
$req->execute
; je présume que tu es assez grand(e) pour chercher toi-même).
0
merci je vais réessayer de reformuler mon code
0