Page 1 sur 1

question bete sur formulaire

Posté : 17 avr. 2005, 21:39
par deus
bonsoir a tous

j'ai un formulaire avec tout plein de champs (13 :P ) .... le form rappelle ma page pour en faire le traitement, jusque la pas de soucis ...
apres validation, tout s'efface ... normal me direz vous :lol:
mais lorsqu'il y a une erreur, genre oubli de remplir un champ, l'utilisateur est obligé de tout retaper, même ce qui etait valide ...
mon but est de conservé les données saisies et valides :roll:

j'ai bien essayé un $_request dans la "value" du champ mais rien n'y fait :?

pourriez vous m'éclairer de vos lumieres ? :wink:

++
Deus

Posté : 17 avr. 2005, 22:18
par ImBrOgLiO
Seul ton code pourrait éclairer des lanternes. Poste-en l'essentiel ici.

Posté : 17 avr. 2005, 22:36
par Invité
hehe, peut etre pas besoin de poster
meme si mes recherches sur internet n'ont pas porté leurs fruits, j'ai trouvé une solution

if ($_POST['nom_du_champ'] != "")
echo "<input type="blabla" value=".$_POST['nom_du_champ']." ...>";
else echo "<input type="blabla" value="" ...>";

:wink:

Posté : 17 avr. 2005, 22:45
par ouckileou
pourquoi t'embêter avec un if ?
<input type="text" name="chp" value="<?php echo $var1; ?>">
si $var1 est vide, le champ le sera aussi ;)

Posté : 18 avr. 2005, 00:16
par deus
en fait c'est pas si bien que ca :?
car lors de la premiere ouverture de page je me retrouve avec
Notice : Undefined index: ref in [...]
et ce pour tous mes champs ... off course

voici des bouts de mon code :

<td><? if ($_POST['ref'] != "")
echo "<input type=text name=ref size=25 value=".$_POST['ref'].">";
else echo "<input type=text name=ref size=25>"; ?></td>
en bas de page, j'ai mon code de recup des variables et l'ajout dans la bdd, je traite tout dans une page avec l'aide d'un discratieux mais pratique :
<input type="hidden" name="validation" value="1">
<?
if (isset($_POST['validation']))
{
$cat = $_POST['categ']; //categorie
$ref = $_POST['ref'];
$desi = $_POST['design'];
$prix = $_POST['prix']; [...]
que puis je faire pour eviter cette erreur, et pouvoir avoir les données que l'utilisateur a saisi auparavant ?

merci de votre aide 8)

Posté : 18 avr. 2005, 00:24
par ouckileou
exact je t'ai dit une bêtise, si tes variables n'existent pas tu auras une erreur

tu peux modifier ton code :
if (isset($_POST['validation']))
{
   $cat = $_POST['categ']; //categorie
   $ref = $_POST['ref'];
   $desi = $_POST['design'];
   $prix = $_POST['prix'];
} else {
   $cat = "";
   $ref = "";
   $desi = "";
   $prix = "";
}
ou plus directement
$cat = (isset($_POST['categ']))?$_POST['categ']:"";
$ref = (isset($_POST['ref']))?$_POST['ref']:"";
// ... etc

Posté : 18 avr. 2005, 09:36
par deus
c'est ce que j'ai fait, j'ai mis des isset et ca marche beaucoup mieux :D :D

merci de votre aide :P