[Sequanux-ml] editeur html

jroussel at cgt.fr jroussel at cgt.fr
Jeu 28 Avr 07:05:13 CEST 2005


Salut,

Juste pour corriger une légère erreur qui s'est glissé dans ce code :

function ma_fonction_magique(numero){
 /* on récupère le contenu de l'editeur passé en parametre */
 rjpf_editor=document.getElementById('editor' + numero); /* editor et non
pas editeur */
 rjpf_editor_iframe=rjpf_editor.contentWindow.document.getElementById('wysiwyg_editor');
rjpf_editor_iframe_content=rjpf_editor_iframe.contentWindow.document.body.innerHTML;
document.getElementById('html' +
numero).value=rjpf_editor_iframe_content;
}

function la_fonction_que_tu_veux(){
 ma_fonction_magique(1);
 ma_fonction_magique(2);
 ma_fonction_magique(3);
}

++

rjpf

> Salut,
>
> Bien entendu, pour faire cela tu pourra faire :
>
> function ma_fonction_magique(var_editor,var_html){
>  /* on récupère le contenu de l'editeur passé en parametre */
>  rjpf_editor=document.getElementById(var_editor);
>  rjpf_editor_iframe=rjpf_editor.contentWindow.document.getElementById('wysiwyg_editor');
> rjpf_editor_iframe_content=rjpf_editor_iframe.contentWindow.document.body.innerHTML;
> document.getElementById(var_html).value=rjpf_editor_iframe_content;
> }
>
> function la_fonction_que_tu_veux(){
>  ma_fonction_magique('editor1','html1');
>  ma_fonction_magique('editor2','html2');
>  ma_fonction_magique('editor3','html3');
> }
>
> Ou encore mieux :
>
> function ma_fonction_magique(numero){
>  /* on récupère le contenu de l'editeur passé en parametre */
>  rjpf_editor=document.getElementById('editeur' + numero);
>  rjpf_editor_iframe=rjpf_editor.contentWindow.document.getElementById('wysiwyg_editor');
> rjpf_editor_iframe_content=rjpf_editor_iframe.contentWindow.document.body.innerHTML;
> document.getElementById('html' +
> numero).value=rjpf_editor_iframe_content;
> }
>
> function la_fonction_que_tu_veux(){
>  ma_fonction_magique(1);
>  ma_fonction_magique(2);
>  ma_fonction_magique(3);
> }
>
> Je te laisse imaginer que tu peux mettre cela sous la forme d'une boucle
> et que tu peux, avec un minimum de dhtml, faire en sorte d'insérer des
> éditeurs de facon dynamique avec javascript.
>
> N'oublie pas de modifier :
> <form action="toto.php" method="post"
> onsubmit="la_fonction_que_tu_veux()">
>
> ++
>
> rjpf
>
>>   jroussel at cgt.fr m'a raconté au claviophone électronique moderne que :
>>> Plop,
>>>
>>> Merci de m'avoir dénoncer Fouinto, maintenant je suis repéré ... ;)
> Bon, comment ca fonctionne.
>>>
>>
>> Ok merci pour cette réponse.
>>
>> En substance dans ma question il y avait :
>> Est-ce possible de créer une fonction
>> ta_fonction_magique(var1,var2)
>>  {blabla}
>>
>> qui appelera successivement :
>>
>> ta_fonction_magique( editor1 , html1 )
>> ta_fonction_magique( editor2 , html2 )
>> ta_fonction_magique( editor3 , html3 )
>> ta_fonction_magique( editor4 , html4 )
>>
>> Ou encore qui donnerait :
>> ta_fonction_magique_globale
>>  {
>>  ta_fonction_magique( editor1 , html1 )
>>  ta_fonction_magique( editor2 , html2 )
>>  }
>>
>> Faisable ça ? j'essayerai de regarder demain. Si j'y arrive pas, je
> re-poste
>>
>> Nico
>>
>>> Déjà, il faut mettre "les" éditeurs dans ta page avec des tags iframe :
> <iframe src="wysiwyg.html" style="width:100%;height:400px;padding:0px
> 0px
>>> 0px 0px;margin:0px 0px 0px 0px;" name="editor1" id="editor1"></iframe>
> <iframe src="wysiwyg.html" style="width:100%;height:400px;padding:0px
> 0px
>>> 0px 0px;margin:0px 0px 0px 0px;" name="editor2" id="editor2"></iframe>
> <iframe src="wysiwyg.html" style="width:100%;height:400px;padding:0px
> 0px
>>> 0px 0px;margin:0px 0px 0px 0px;" name="editor3" id="editor3"></iframe>
>>>
>>> Ensuite, il faut que tu crée des champs de formulaires destinés à
> poster le contenu de tes éditeurs :
>>> <form action="toto.php" method="post" onsubmit="la_fonction_magique()">
> ....
>>> <input type="hidden" name="html1" />
>>> <input type="hidden" name="html2" />
>>> <input type="hidden" name="html3" />
>>> ....
>>> </form>
>>>
>>> Jusque la, il n'y a pas beaucoup de surprises en dehors des numéros 1,
> 2 et 3 et le onsubmit="la_fonction_magique()" :)
>>>
>>> Ensuite, il faut s'arranger pour que quand le gugus poste le
> formulaire, une fonction aille cherche le html des editeurs pour les
> mettre dans tes champs <input type="hidden" name="html1" />
>>> <input type="hidden" name="html2" />
>>> <input type="hidden" name="html3" />
>>>
>>> Pour se faire, j'utilise une fonction javascript (ma fonction magique)
> : <script type="text/javascript">
>>> function ma_fonction_magique(){
>>>  /* on récupère le contenu de l'editeur 1 */
>>>  rjpf_editor1=document.getElementById('editor1');
>>>  rjpf_editor1_iframe=rjpf_editor1.contentWindow.document.getElementById('wysiwyg_editor');
> rjpf_editor1_iframe_content=rjpf_editor1_iframe.contentWindow.document.body.innerHTML;
> document.getElementById('html1').value=rjpf_editor1_iframe_content; /*
> on récupère le contenu de l'editeur 2 */
>>>  rjpf_editor2=document.getElementById('editor2');
>>>  rjpf_editor2_iframe=rjpf_editor2.contentWindow.document.getElementById('wysiwyg_editor');
> rjpf_editor2_iframe_content=rjpf_editor2_iframe.contentWindow.document.body.innerHTML;
>>> 	document.getElementById('html1').value=rjpf_editor2_iframe_content; /*
> on récupère le contenu de l'editeur 3 */
>>> 	rjpf_editor3=document.getElementById('editor3');
>>> 	rjpf_editor3_iframe=rjpf_editor3.contentWindow.document.getElementById('wysiwyg_editor');
> rjpf_editor3_iframe_content=rjpf_editor3_iframe.contentWindow.document.body.innerHTML;
> document.getElementById('html1').value=rjpf_editor3_iframe_content;
>>> }
>>> </script>
>>>
>>> Normalement, dans toto.php, en php tu doit pouvoir recevoir dans
> $_POST['html1'], $_POST['html2'], $_POST['html3'] le contenu html de
> tes editeurs.
>>>
>>> J'ai pas testé, tu pourra me dire si ca fonctionne (ou si ca fonctionne
> pas )?
>>>
>>> Ciao,
>>>
>>>
>>>>On Mon, 25 Apr 2005 19:31:45 +0200
>>>>Nico <nicolas.poulain at ouvaton.org> wrote:
>>>>
>>>>
>>>>>  Fouinto m'a raconté au claviophone électronique moderne que :
>>>>>
>>>>>>On Mon, 25 Apr 2005 18:59:16 +0200
>>>>>>Nico <nicolas.poulain at ouvaton.org> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Bonjour,
>>>>>>>
>>>>>>>Est-ce que qq'un peut me guider pour mettre plusieurs editeurs html
> (disponible sur Sequanux.org) ?
>>>>>>>
>>>>>>
>>>>>>
>>>>>>Bonjour,
>>>>>>
>>>>>>Comment dire... je ne comprends rien :) mais le pire, c'est que je
> reconnais tous les mots... mais... je ne comprends rien à la phrase
> :)
>>>>>>
>>>>>>Vous pouvez reformuler svp?
>>>>>>
>>>>>
>>>>>Salut,
>>>>>
>>>>>prd pour le message ésotérique.
>>>>
>>>>Y a pas de mal :) c'est juste que pour que le maximum de personnes
> puissent répondre, il faut qu'un maximum de personnes puissent
>>>>comprendre :)
>>>>
>>>>
>>>>
>>>>>Y'a un éditeur html à télécharger sur sequanux à intégrer dans une
> page  web. Après en avoir essayé un autre, celui-là me plait bien.
>>>>
>>>>Je n'avais pas testé la dernière version, mais c'est vrai qu'il a fait
> du bon boulot rjpf :)
>>>>
>>>>
>>>>
>>>>>Seulement je souhaite m'en servir pour remplir une base de données
> avec  plusieurs champs textes pour chaque enregistrement
>>>>>Donc j'ai besoin de mettre plusieurs editeur sur la même page.
>>>>
>>>>Chaque champ devrait contenir une sorte de mini page html? c'est bien
>>>> ça?
>>>>
>>>>
>>>>
>>>>>Or je subodore que si on en met plusieurs sur la même page il y a des
> choses à modifier.
>>>>>Je voulais savoir si qq'un avait déjà tenté l'expérience ? si c'était
> prévu pour ? enfin, si il y a des choses à modifier, vers où il faut
> aller ?
>>>>
>>>>Personnellement, je ne sais pas... je doute qu'il n'y ait pas de
> modification à faire... Je pense que le mieux placé pour répondre est
> rjpf, je lui laisse donc le soin de répondre :)
>>>>
>>>>
>>>>
>>>>>+ clair, ai-je été ?
>>>>
>>>>Cette fois, le message est parfaitement compréhensible.
>>>>
>>>>--
>>>>Attention, le reply-to se fait à l'expéditeur, pas à la liste
>>>>Sequanux-ml at sequanux.org
>>>>http://sequanux.org/cgi-bin/mailman/listinfo/sequanux-ml
>>>>
>>>
>>>
>>
>>
>> --
>> Nico
>> http://nicolas.poulain.ouvaton.org
>>
>
>
>
> --
> Attention, le reply-to se fait à l'expéditeur, pas à la liste
> Sequanux-ml at sequanux.org
> http://sequanux.org/cgi-bin/mailman/listinfo/sequanux-ml
>



Plus d'informations sur la liste de diffusion Sequanux-ml