Page 1 sur 3

formulaire intelligent ???

Posté : 11 oct. 2005, 13:26
par pomme11
Bonjour,

Avant toute chose, je suis newbie et même encore plus ... donc désolé si je ne comprends pas tout de suite :)
J'ai cherché dans votre forum sans succès.
Ma problématique :
créer un formulaire qui soit "intelligent", par ex :
je réponds oui à la q1, alors je vais à la q3
je réponds non à la q1, alors je vais à la q2
etc ...

J'ai besoin à la fin de générer un document texte dans lequel auront été intégrés des paragraphes correspondant aux questions ...
En fait, ce sont des textes de lois correspondant aux réponses données aux questions.

Je sais, c'est tordu, et vous n'avez pas que ça à faire.
Je n'ai pas le moindre morceau de code, nada, niente ...
Je cherche des tutos qui pourraient m'aiguiller ... et je commence à désespérer, sincèrement.

Toute aide me sera très utile.

En vous remerciant,

Cdlt,

Posté : 11 oct. 2005, 13:29
par heddicmi
Si tout ton formulaire se trouve sur la même page, envisage du javascript... Du genre : "Si je clique sur oui, alors je donne le focus à l'élément du formulaire correspondant à la question 3"...

Posté : 11 oct. 2005, 13:39
par Cyrano
J'ajouterais que tu devrais te faire un algorithme, en pseudo-code, c'est assez facile à faire, d'autant que ça s'écrit dans ton langage quotidien :

Code : Tout sélectionner

Si réponse à q1 = "oui" alors passer à question q3; Sinon Alors passer à question q2; FinSi ... etc...
Quand tu auras établi l'algorithme complet, il sera alors extrêmement facile de traduire ça en code, JavaScript ou PHP + HTML

Posté : 11 oct. 2005, 13:42
par pomme11
Bonjour,

Merci de votre aide.
Heddicmi : je suis désolé mais je suis newbie et je ne connais pas le java ...
Cyrano : merci pour l'info de l'algo, j'ai ma trame. Le seul hic (de taille) est que je ne sais pratiquement pas programmer en php :oops: c'est pour cette raison que je cherche des tutos sur le sujet.

Encore merci de votre aide,

Cdlt,

Posté : 11 oct. 2005, 13:49
par Cyrano
Les meilleurs tutos:

Posté : 11 oct. 2005, 13:56
par pomme11
Merci pour les liens.
Cdlt,

Posté : 13 oct. 2005, 12:08
par pomme11
Bonjour,

ça y est ... je me suis lancé dans le PHP :wink:
et déjà mes premières questions :
comment fait-on pour ajouter du texte contenu dans une variable dans un document ???
voici le code que j'ai mis dans ma page question1.php ...
$f_final = fopen("./textes/texte_final.doc","w");
fputs($f_final, $comptable|$adherent); // on écrit le nom du comptable et de l'adhérent
fclose($f_final);
Je récupère mes variables d'un POST situé sur la page index.php :
<form method="post" action="question1.php">
<p>Nom du Comptable :<br>
<input type="text" name="comptable" size="40" /><br><br>
Nom de l'Adhérent :<br>
<input type="text" name="adherent" size="40" /><br>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>    
Ben en fait, ça marche pas :
Notice: Undefined variable: comptable in c:\program files\easyphp1-7\www\test\question1.php on line 12

Notice: Undefined variable: adherent in c:\program files\easyphp1-7\www\test\question1.php on line 12
Si vos lumières pouvaient éclairer mon ignorance ...
Cdlt,

Posté : 13 oct. 2005, 12:12
par zeus
comment fait-on pour ajouter du texte contenu dans une variable dans un document ???
fputs($f_final, $comptable.$adherent); // on écrit le nom du comptable et de l'adhérent
C'est le point (.) qui est l'opérateur de concaténation
Ben en fait, ça marche pas :
Notice: Undefined variable: comptable in c:\program files\easyphp1-7\www\test\question1.php on line 12

Notice: Undefined variable: adherent in c:\program files\easyphp1-7\www\test\question1.php on line 12
Je ne suis pas sûr que les lignes 11 et 12 correspondent au code que tu nous as montré. Ces erreurs sont affiché quand tu utilise une variable PHP qui n'existe pas et dans ton formulaire, tu n'as pas de variable php utilisé

Posté : 13 oct. 2005, 12:12
par heddicmi
Je te renvois sur un tuto très explicite où tu découvriras comment récupérer les valeurs d'un formulaire... C'est quelque chose d'assez fondamental... A bien intégrer :wink:

Posté : 13 oct. 2005, 12:15
par mere-teresa
method="post" donc toutes les infos récupérées de ton form sont dans une variable (de type tableau PHP) nommée $_POST
Ainsi name="adherent" sera dans $_POST["adherent"], il te suffit d'afficher le contenu de cette variable.

Posté : 13 oct. 2005, 13:59
par pomme11
Merci de vos réponses.
Je vais tenter d'éclaircir ...
le comptable et l'adhérent sont renseignés sur la page index.php via un post :
<body>
<form method="post" action="question1.php">
<p>Nom du Comptable :<br>
<input type="text" name="comptable" size="40" /><br><br>
Nom de l'Adhérent :<br>
<input type="text" name="adherent" size="40" /><br>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>    
</body>
ça c'est le début de question1.php :
<body>
		<? 
			include 'commun.inc.php' ; //afichage comptable & adhérent en haut de chaque page
			$f_final = fopen("./textes/texte_final.doc","w");
			fputs($f_final, $comptable.$adherent); // on écrit le nom du comptable et de l'adhérent
			fclose($f_final);
		?>
Si je fais
echo $_POST['comptable']
dans ma page question1.php, pas de problème : c'est affiché ...
mais c'est lorsque je veux les ajouter au document word que j'ai l'erreur ...
Cdlt,

Posté : 13 oct. 2005, 14:04
par heddicmi
Il faut faire la liaison...

Si tu n'arrives pas à afficher avec $comptable mais avec $_POST["comptable"], alors il faut suremetn remplacer celui qui marche pas... Par l'autre...

Posté : 13 oct. 2005, 14:24
par pomme11
J'ai ajouté ce code
$comptable = $_POST['comptable'];
$adherent = $_POST['adherent'];
au début de question1.php, comme précinosé par mère-thérésa, et je n'ai plus d'erreur affichée.
Le "seul" hic c'est que dans mon fichier word il m'ajoute le texte $comptable et non le contenu de la variable $comptable :shock:
Je suis désolé de vous embêter avec mes questions de débutant, mais j'avoue que je bloque grave ...
Cdlt,

Posté : 13 oct. 2005, 14:30
par heddicmi
Qu'as tu si tu remplaces :
fputs($f_final, $comptable.$adherent); 
par
fputs($f_final, "$comptable $adherent"); 

Posté : 13 oct. 2005, 14:37
par pomme11
un petit pas minuscule pour vous, un grand pas pour moi :D
ça y est, juste avec les " ... ça marche.
allez, hop, pb suivant :wink:
comment puis-je conserver ma variable $comptable (qui est créée dans question1.php) dans traitement.php ???
Cdlt,

Edit : J'espère ne pas vous avoir froissés en me permettant de dire
allez, hop, pb suivant :wink:

Si c'est le cas, veuillez m'en excuser ...
C'était mon euphorie du moment.