Contenu modifiable d'un textarea

Fermé
Utilisateur anonyme - 22 juin 2007 à 15:59
bartman24 Messages postés 2 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 7 février 2008 - 7 févr. 2008 à 21:44
Salut tout le monde!

mon probleme est le suivant :
je cree un site dynamique cela veut dire que tout le contenu affiché

dans mes pages est stocké dans une base de données mysql,et j'essai de
le recuperer en utilisant des requetes php,ca marche avec les champs de
text ,mais ca decone avec les zones de text.

alor ce contenu qui est affiché dans la zone a partir de la BD j'aimerai le
modifier ou bien le consulter seulement et le renvoyer vers la BD pour pouvoir
mettre a jour ce qui affiché dans les pages du site


mais ca marche pas/par contre si je suprime ce qui est affiché et je recommence

la saisie (à zero) ca marche. ca me semble bizarre !!!!
par exemple:

<textarea name="name" rows="15" cols="50"> <? $ici le contenu ?></textarea>
et je recupere le contenu:
if (isset($_POST["name"])){
$name=$_POST["name"];}else $name="";
ma requete ici ......

(on peut dire que ca ressemle :p un peu a la methode qu'on utilise pour permettre
aux membres du forum de ce site meme(comment ca marche) de modifier leurs messages qui sont deja publiés ;) )

Merci d'avance pour votre reponse.

5 réponses

bartman24 Messages postés 2 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 7 février 2008 1
7 févr. 2008 à 21:43
Bonjour,

si tu veux faire afficher le texte dans ton textarea qui figure dans ta bd tu dois le mettre entre les deux balise textarea et nom dans un attribut value car elle n'existe pas pour le textarea.

Il faut que tu fasse ca.


while ($ligne=mysql_fetch_row($result2)){
foreach($ligne as $champs){
echo "<p>
<label>".mysql_field_name($result2,$y)."</label>
<textarea name=".mysql_field_name($result,$y)." >".nl2br(htmlentities($champs))."</textarea>
</p>";
}

$y++;
}
}


J'espère avoir pu t'aider.

Cordialment

bartman24
1
Ohm-WorK Messages postés 1464 Date d'inscription mardi 25 octobre 2005 Statut Contributeur Dernière intervention 29 octobre 2019 420
22 juin 2007 à 16:13
Salut

As tu mis un "or die (mysql_error())" sur ta requète afin de voir le message d'erreur ?

J'utilise ton procédé, qui marche très bien.

Tchusss
0
Utilisateur anonyme
22 juin 2007 à 16:34
ouiiiii et d'aprés le message ,ca concerne des erreurs syntaxiques dans le contenu ,ex: ' % - et :
mais ce me semble ilogique car le contenu doit etre posté tel qu'il est non? puisque je l'ai deja recuperer a partir de la zone .(le probleme est dans le restockage) Merci :)
0
zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 62
22 juin 2007 à 23:43
En fait non, le contenu n'est pas posté tel quel en php ...

99.999 % des hébergeurs de sites web utilisent l'option
magic_quotes_gpc = On
de php qui remplace tous les caractères dangereux pour la sécurité du site (apostrophes, guillements, signes inférieur et supérieur, esperluette, etc.)

Essaye, par exemple, de taper le caractère ' (apostrophe) dans un champ texte de ton formulaire et récupère le dans une variable $_POST de ton script php.

Tu verras qu'en fait tu récupères \' et non '
0
Utilisateur anonyme > zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007
24 juin 2007 à 16:40
mercii bcp,je suis reconaissante pour toi; la je l'ai essayer et ca marche bien mais j'avais esperé une autre solution puisque cette option j dois l'ajouter a tout moment j'ai reinstallé le easyphp(ainsi que sur chaque serveur) puisk'on l'ajout dedans.mais bon merciiiiiiiii
0
zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 62
24 juin 2007 à 17:28
Content d'avoir pu t'aider.

A+
0
Bonjour,

J'ai également un probleme concernant la recupération d'un champs type textarea.

Je veux modifier les champs d'un enregistrement dans ma BD et je l'affiche sous forme d'input modifiables.
Le probleme se pose avec les champs de type textarea.
Apres execution de la requete, je veux donc afficher les resultats dans un formulaire et voici la partie qui pose probleme

while ($ligne=mysql_fetch_row($result2)){
        foreach($ligne as $champs){
	echo "<p>
	<label>".mysql_field_name($result2,$y)."</label>
	<textarea name=".mysql_field_name($result,$y)." value=".nl2br(htmlentities($champs))."></textarea> 
	</p>";  
	}

	$y++;
	}
             }	  



C'est la ligne value=".nl2br(htmlentities($champs))." qui me pose probleme
En fait, le champs s'affiche bien mais il ne m'affiche pas la premiere ligne de mon champs.

Ex : si la valeur du champs est
ligne 1
ligne 2
ligne 3

dans le textarea modifiable, il m'affiche
ligne 2 <br>
ligne 3 <br>

Si quelqu'un a une idée, merci d'avance.
0

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

Posez votre question
bartman24 Messages postés 2 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 7 février 2008 1
7 févr. 2008 à 21:44
Bonjour,

si tu veux faire afficher le texte dans ton textarea qui figure dans ta bd tu dois le mettre entre les deux balise textarea et nom dans un attribut value car elle n'existe pas pour le textarea.

Il faut que tu fasse ca.


while ($ligne=mysql_fetch_row($result2)){
foreach($ligne as $champs){
echo "<p>
<label>".mysql_field_name($result2,$y)."</label>
<textarea name=".mysql_field_name($result,$y)." >".nl2br(htmlentities($champs))."</textarea>
</p>";
}

$y++;
}
}


J'espère avoir pu t'aider.
0