IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] pasteHTML qui transforme le code


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 214
    Points : 208
    Points
    208
    Par défaut [PHP-JS] pasteHTML qui transforme le code
    Bonjour,
    j'ai créé un éditeur de texte en ligne dans lequel on peut créer tous les types de champs de formulaire (un peu comme FCKEditor).
    Mon problème est le suivant :
    après avoir créé plusieurs champs, je décide d'enregistrer le tout dans une page php que je pourrai réutiliser plus tard.
    Je veux changer le nom des champs en y ajoutant un id unique, généré après coup.
    Je lance donc une recherche d'expression régulière.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    preg_replace ("/<input type='text' id='truc' name='truc'/",<input type='text' id='14_truc' name='14_truc',$chaine);
    Ca ne marche pas. Je me rends alors compte que ma page php n'a pas été enregistrée comme je le pensais.
    Au lieu d'avoir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id="text" name="text" size="10" maxlength="10" type="text">
    j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id=text maxlength=10 size=10 name=text>
    Est-ce que quelqu'un a déjà utilisé cette fonction pour créer des champs ? Y a-t-il une autre fonction (du genre innerHTML) à utiliser pour être sûr que le code ne va pas être modifié à l'arrivée ?

    Ce problème se pose sous IE.

    Mais sous FireFox, j'utilise execCommand("insertHTML",texte), et cette fois c'est l'attribut type="text" qui se retrouve tout à la fin.

    Je pas comprendre.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 214
    Points : 208
    Points
    208
    Par défaut
    Bon, je crois que j'ai compris un truc aujourd'hui.
    Quand on fait du pasteHTML d'une balise input type='text', IE colle en fait la balise suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id=id maxlength=taillemax size=taille name=nom>
    Sans le type, les ' ou ", et quelle que soit la façon de créer la balise.
    Il faut donc tester pour tous les types de champ, comment Ie et Mozilla les créent et de trouver le dénominateur commun....Super !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. transformer un code php en asp.net c#
    Par lila123 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 02/04/2009, 17h35
  2. évènement onmouseover qui affiche du code php ?
    Par The_Nail dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 10/06/2008, 17h51
  3. Comment écrire un shell qui transforme un code ascii en caractère?
    Par jack-ft dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 21/04/2008, 17h51
  4. Réponses: 1
    Dernier message: 26/03/2008, 18h21
  5. [XML] Transformer un code XML en PHP
    Par leila2006 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 07/05/2006, 18h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo