Retour chariot et textarea (php) - HTML/CSS - Programmation
Marsh Posté le 08-12-2005 à 13:04:07
saxgard a écrit : ya t'il un autre moyen de passer una variable javascript a une variable PHP? |
Vi, tu changes l'action de ton formulaire et tu l'envois sur une autre page en ouverture.
Comme le code d'HFR, le forum, si tu regardes, quand tu cliques sur répondre, cela produit un envoie de formulaire qui permet de récupérer ce que tu as déjà commencé à taper dans la case Réponse rapide.
Marsh Posté le 08-12-2005 à 13:07:26
Forcément si tu vire les \n ça risque de pas fonctionner...
Marsh Posté le 08-12-2005 à 14:10:08
The-Shadow a écrit : Vi, tu changes l'action de ton formulaire et tu l'envois sur une autre page en ouverture. |
Si je comprend bien faut que je fasse un submit (comme quand je valide mon formulaire)? mais au lieu que je le traite pour le valider (ajout dans la base de donnée etc..) je l'affiche uniquement c'est bien ça?
Si c'est ca il faut bien que je differencie le bouton apercu et le bouton valider du formulaire.
Chacun doivent avoir un submit different.
peut-on sur le meme formulaire envisager 2 submit differents?
Un submit lorsque je clique sur apercu et un autre quand je clique sur valider
FlorentG je les supprime pas les \n je les remplaces par des <br>
je fais plus ou moin ce que ferai nl2br()
Marsh Posté le 08-12-2005 à 14:18:24
Mais faut pas. Dans une textarea, c'est pas des <br> qu'il faut, mais des \n (ou \r\n)
Marsh Posté le 08-12-2005 à 14:19:56
saxgard a écrit : Si je comprend bien faut que je fasse un submit (comme quand je valide mon formulaire)? mais au lieu que je le traite pour le valider (ajout dans la base de donnée etc..) je l'affiche uniquement c'est bien ça? |
En html, tu fais un bouton de type button, pas de type submit, et tu fais un onclick="procedureapercu()"
et ensuite, en javascript, tu fais
function procedureapercu {
changementdelactionduformulaire avec target blank
et submit()
}
Marsh Posté le 08-12-2005 à 14:23:58
FlorentG a écrit : Mais faut pas. Dans une textarea, c'est pas des <br> qu'il faut, mais des \n (ou \r\n) |
en fait j'ai du mal m'exprimer.
je récupere mon textarea qui lui doit contenir des \n ou (\r\n) et pour afficher ces \n sur ma page html , je doit bien transformer ces \n par des <br>, \n c'est pas reconnu en HTML
Cela dit je me trompe peut etre (j'ai mon cerveau un peu fatigué la) dans mon raisonnement, mais si t'affiche directement le contenu de ton textarea sans traiter les retours chariots, je sais pas si tu aura des sauts de lignes dans ta page web
sinon je crois que j'ai trouvé pour les submit, j'ai vu qu'on pouvait modifier son action avec la propriété action
document.forms.action
je vais pouvoir dans ma fonction apercu()
faire un changement de l'action et faire un submit, je recupere ensuite mon textarea en POST et normalment ca devrait etre bon
si je fais fausse route signalez moi le
je vous tient au courant
The Shadow nos idées se sont croisés , merci
Marsh Posté le 08-12-2005 à 14:24:46
ReplyMarsh Posté le 08-12-2005 à 14:25:30
FlorentG a écrit : Ah j'ai dû mal pigé, j'ai cru que t'affichais le contenu dans un textarea |
non non , pas grave , je m'exprime surement très mal aussi
c'est bon ca marche :
Code :
|
je recupere mon textarea avec $_POST['nomtextarea'] dans mon fichier apercu.php
et c'est bon
youpiiii
merci a tous les 2
Marsh Posté le 14-06-2006 à 17:31:24
En PHP j'ai résolu le pb de cette manière :
$mavar = str_replace("\r\n", "\\r\\n", $mavar);
et après en js, txtarea.value = '$mavar';
Marsh Posté le 14-06-2006 à 17:42:59
agateway a écrit : En PHP j'ai résolu le pb de cette manière : |
en PHP, il existe une fonction spécialement pour ça $mavar=nl2br($mavar);
En général, les fonctions toutes faites sont plus rapides.
Edit : Ha non merde, j'ai mal compris.
Marsh Posté le 08-12-2005 à 12:56:09
salut
Voila j'ai un petit souci
J'ai un textarea ou je fais des retour chariot, pour l'instant aps de probleme
par contre lorsque je veux faire un apercu de ce textarea en passant par le javascript les retour chariot disparaissent :
dans mon textarea j'ai:
le lancement de l'apecu est fait comme ca:
la fonction javascript apercu ressemble a ça :
Et mon preview.php ressemble a ca :
et la il n'y a aucun saut de ligne de fait , a l'affichage j'aurais :
Par contre si j'enregistre mon textarea dans une base mysql que je lis ce contenu a partir de la base, que je fais le "replace" et que j'affiche le contenu, les sauts de lignes se font bien.
Par consequent l'enregistrement dans la base de donnée garde bien les retour chariot du textarea , mais le passage du textarea en javascript, enleve les retour chariot. peut etre, c'est parceque je passe la variable dans l'URL , ya t'il un autre moyen de passer una variable javascript a une variable PHP? (meme si je pense pas que le probleme vienne de la)
je sait pas si je suis assez clair, mais si vous pouviez m'aider ca serait sympas
PS: je connais la fonction nl2br() et ca ne resoud pas mon probleme , je suis allez voir dans le forum si il ya vait une réponse a mon probleme et j'ai pas trouvé
petite explication supplementaire : En gros je suis en train de faire un site qui sera administrable en ligne et la mise a jour du contenu se fera comme lorsqu'on poste sur un forum , avec du BBcode etc..
Et je dois avouer que je galere un peu avec le traitement des chaines de caractères.
Message édité par saxgard le 08-12-2005 à 13:03:42