[PHP] mettre du html et du php dans une var ?

Fermé
cRiMi - 16 avril 2007 à 14:48
s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 - 25 avril 2008 à 21:14
[PHP]

bonjour, j'ai 15 ans et jsui novice en php. je voudrais savoir comment mettre un questionnaire (formé de balises HTML et PHP) dans une variable PHP. j'ai essayé plusieurs façons mais à chaque fois le page affiche le HTML alors qu'il devrait etre dans le variable et donc, ne pas s'afficher.

Merci par avance de votre aide !
A voir également:

8 réponses

s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 618
17 avril 2007 à 16:14
Déjà 1er truc il y a une erreur dans le code , tu ne peut pas mettre un commentaire un plein milieu d'un echo, car tu va afficher le commentaire dans la page.

Après tu as des variable $_POST[a*], ce sont des variable récupéré d'un formulaire, ca veut donc dire qu'avant d'être sur ce formulaire on était déjà sur une autre formulaire pour remplir ces variable. Un peu tordu non ?

Là tel que ton code est écris tu enregistre $_POST[a*] comme de simple mots et pas des variables.

Tu dois mettre :


<?php

$formulaire = '

<form method="POST" action="2.php">

1. ' . $_POST['a'] . '...
<select name="a">
	<option value="' . $_POST['az1'] . '"> ' . $_POST['a1'] . '</option>
	<option value="' . $_POST['az2'] . '"> ' . $_POST['a2'] . ' </option>
	<option value="' . $_POST['az3'] . '"> ' . $_POST['a3'] . ' </option>
	<option value="' . $_POST['az4'] . '"> ' . $_POST['a4'] . ' </option>
</select>
<br><br>
<center>
<h3>Et voilà c\'est fini !</h3><br>
<input type="submit" value="Clique ici pour connaitre ta note">
</form>
</center>

</form>';

?>


Au final $formulaire contiendra toujours :

<form method="POST" action="2.php">

1. ...
<select name="a">
	<option value="">  </option>
	<option value="">  </option>
	<option value="">  </option>
	<option value="">  </option>

</select>
<br><br>
<center>
<h3>Et voilà c\'est fini !</h3><br>
<input type="submit" value="Clique ici pour connaitre ta note">
</form>
</center>


Car il faut déterminer les variable qu'elle contient avant.

D'ailleurs à quoi ca te sert de mettre le formulaire en variable ??????
1
Je veux le mettre en variable pour le caler sur ma bdd.
T'as pas tout à fait compris le principe de mon truc.
et tkt pas j'en suis pas à mon premier code, je connais les transmissions de variables sur le bout des doigts ;).
merci quand mm
0
s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 618
17 avril 2007 à 06:43
Salut,

Peut on voir ton code ?
0
voici le code de la création de la variable que je veux envoyer sur ma BDD pour la récupérer plus tard. Le problème est que plutot que créer la variable puis l'envoyer, le contenu est simplement affiché sur la page...

$formulaire = '

<form method="POST" action="2.php">

1. $_POST[a] ...
<select name="a">
	<option value="$_POST[az1]"> $_POST[a1]</option>
	<option value="$_POST[az2]"> $_POST[a2] </option>
	<option value="$_POST[az3]"> $_POST[a3] </option>
	<option value="$_POST[az4]"> $_POST[a4] </option>
</select>
<br><br>
// Normalement il y a 10 questions mais j'ai abrégé pour vous car c'est exactement la meme chose à chaque fois.
<center>
<h3>Et voilà c\'est fini !</h3><br>
<input type="submit" value="Clique ici pour connaitre ta note">
</form>
</center>

</form>';


Voilà c'est un peu compliqué mais svp j'ai vraiment besoin de ce code mais je ne vois pas comment ca ce fait que ca ne fonctionne pas...
Dans le pire des cas si il n'y a pas de solution à mon problème je peux expliquer dans les détail ce que je veux faire de ce code, il a peut-etre une solution plus simple ...
0
salut, bon g pas trop compris ton objectif essentiellement mais j'ai toutefois essayé d'affiché la variable forumulaire et ca marche : echo $formulaire;

je suis certain ke ce n'est pas a ca ke tu t'est arreté, alors si tu peux eclairicir un peu les choses, pcke j'arrive a saisir pkoi tu veux envoyer tout le form et son affichage dans un champ d'une table de la bdd.
0
cRiMi > brainy
17 avril 2007 à 12:17
Bon enfète je veux créer un ensemble de page qui permetrai de créer un questionnaire QCM personnalisé, puis d'envoyer une URL qur laquelle s'afficherai le questionnaire créé précédement. ensuite la personne qui l fera recevra ue note.
enfète c'est juste une petite maquette peu évoluée de la base de mon prochain site qui sera aussi mon premier site en php.
0
brainy > brainy
17 avril 2007 à 14:47
si j'ai bien compris, ta besoin de creer un QCM, qui une fois ke ton client a repondu aux questions, tu va lui envoyer le resultat.
si c le cas, alors ce n'est pas le form que tu va envoyer mais plutot les resultats de ces reponse aux questions. jette un coup d'oiel sur la recuperation des données d'un formulaire sur ce site.
sinon est ce que tu utilise une base de données ou pas?
0
Mon but est de pemettre à n'importe qui de créer un questionnaire et ensuite de l'envoyer à qui on veut.

Ce code que j'ai fourni est la deuxième page, c'est à dire que à ce stade, l'utilisateur a donné les questions qu'il veut poser, les réponses qui seront disponibles et e barème. ce code a pour but de "compiler" le questionnaire pour le caler sur la bdd pour que l'utilisateur puisse envoyer l'URL qui lui a été donné à ses amis qui pourront alors faire le tst qu'il vient de créer.
sur la troisième page, (celle indiquée par l'URL qui sera envoyée) ira chercher le questionnaire qui a été créer sr la bdd et l'affichera.
ensuite la personne répond et elle obtient une note.
je sais c'est un peu complique à expliquer comme ça désolé...
pour ce qui est du commentaire que j'ai mis dans le code, il n'y est pas dans mon script, je l'ai rajouté juste pour vs donner des indications.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bon ton prog est vraiment sympa. donc ton pb est ke t'arrive pas a envoyer la variable dans la base?
0
oui c'est exactement ça. la page affiche le contenu de l variable alors qu'elle devrait l'envoyer sur la bdd et pas la montrer...

voici les pages en questions :
#############
#www.deray.fr/a/#
#############

Merci à tlm pour vos réponses !
0
s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 618
17 avril 2007 à 17:27
A ma connaissance tu ne peux pas mettre de code PHP dans une base de donnée, car quand tu va l'appeler celle ci elle ne sera pas interprété.

preg_replace pourrait peut être t'aider.
0
Merci beaucoup pour cette info je me renseigne !
0
s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 618
25 avril 2008 à 21:14
Tu peux utiliser eval.
0
je verais plutot un htmlentities($formulaire) avant de l'inserer dans la base
et un html_entity_decode($formulaire) quand on le sort de la base ^^
0
s.spark Messages postés 2485 Date d'inscription vendredi 29 octobre 2004 Statut Contributeur Dernière intervention 13 février 2018 618
25 avril 2008 à 21:11
C'est idiot de convertir les caractères éligibles en entités HTML si c'est pour faire exactement le contraire quand on les affiche.
0