Modification de fichier txt

Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012 - 23 mars 2008 à 11:34
Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012 - 24 mars 2008 à 23:01
Bonjour,

voila: j'ai créé un formulaire qui m'affiche dans la <TextArea> le fichier.txt,
que l'on peut modifier puis réécrire dans le fichier.txt.

mon problème est que dans ce fichier j'ai des balises (
...),
et quand le fichier.txt s'affiche dans le formulaire on voit ces balises (ce qui n'est pas le plus embêtant),
et lorsque on envoie le formulaire , le script php recode ces balises (genre; &lt;p class&quot;roman-titre&quot;&gt;)
ce qui est plus embêtant,

Voici mon formulaire et le script php:

Roman :

<form method="post" action="admin.php?page=modif&param=romanmodifie">

<textarea name="changement" id="changement" cols=47 rows=8 >
<?php include"roman.txt"; ?>
</textarea>

</form>

-----------------------------------------------------------

<?php



$kind=htmlentities($_POST['kind']);
$changement=htmlentities($_POST['changement']);
$where=htmlentities($_POST['where']);



$file = fopen("$kind","w");



fwrite($file,$changement);
fclose($file);



header ("Location: $where");



?>


Voilà, si quelqu'un peu m'aider...

Salut

Annadrill

9 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
23 mars 2008 à 11:48
salut

remplace :
$changement=htmlentities($_POST['changement']);
par :
$changement=$_POST['changement'];

tu devras aussi ajouter un htmlentities pour mettre le fichier dans ta textarea
0
Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012
23 mars 2008 à 12:02
merci bien,

je ne comprend juste pas comment ajouter le htmlentities à la textarea

Annadrill
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
23 mars 2008 à 12:55
remplace :
<textarea name="changement" id="changement" cols=47 rows=8 >
<?php include"roman.txt"; ?>
</textarea>
par
<textarea name="changement" id="changement" cols=47 rows=8 >
<?php echo htmlentities(file_get_contents("roman.txt")); ?>
</textarea>
0
Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012
23 mars 2008 à 13:07
merci, mais visiblement ca veut pas...

ca m'écrit quand même les ...

Annadrill
0

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

Posez votre question
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
23 mars 2008 à 18:42
Salut,

ben si tu as les c'est que tu les as au départ dans ton fichier... c'est pas magique si ils sont la dans le fichiers ils vont s'afficher à quoi tu t'attends ?

Parce que ce n'est certainement pas htmlentities qui les mets la, cette fonction convertie les entitées (majoritairement les charactères spéciaux/accents) et d'après ce que je sais elle n'ajoute en aucun cas des "balises" html au texte..
0
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
23 mars 2008 à 18:47
Salut,
Bon j'ai oublié de dire que la solution de coucou747 est bonne, tu devrais les encodées juste à la sortie... et non à l'entrée puisque tu veux avoir tes balises intacte dans le fichier...
0
Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012
23 mars 2008 à 19:10
Ce que j'aimerais c'est que je ne vois pas les balises dans la textarea.

jai un form
titre : Annadrill
0
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
23 mars 2008 à 21:21
Oooh ben tu n'avais pas dit ça, tu dois alors découper la chaine à la sortie. Plusieurs choix: Avec des expressions régulières ,manipulation de chaine strpos/substr ou encore un filtre avec sscanf.

Par exemple sscanf(file_get_contents('roman.txt'),"%s

\n%s

",$titre,$message);

Ensuite tu peux afficher echo $message ou echo $titre selon ce que tu veux..


Ou sinon tu le stoque différement au départ dans ton fichier pour pouvoir le découper plus aisément, avec serialize par exemple.

Bref ton explication est beaucoup plus clair à présent c'est plus facile de t'enligner :)
0
Annadrill Messages postés 147 Date d'inscription mercredi 9 mai 2007 Statut Membre Dernière intervention 22 novembre 2012
24 mars 2008 à 23:01
Hello,

merci, je m'en suis finalement sortit et ai meme ajouté un éditeur de texte ....

salut
Annadrill
0
Rejoignez-nous