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 :

Colorer les mots clé d'un langage dans une zone de texte


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    195
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 195
    Points : 62
    Points
    62
    Par défaut Colorer les mots clé d'un langage dans une zone de texte
    Salut tout le monde,

    Mon objectif est de colorer les mots résérvés du SQL (ou de n'importe quel autre langage pour rendre la question plus intéréssante) dans une zone de texte. Par exemple au lieu d'afficher:

    "SELECT * FROM Table WHERE cle = valeur"

    Je voudrais afficher:

    "SELECT * FROM Table WHERE cle = valeur"

    Je signal encore que le texte est contenu dans une zone de texte, alors il m'etait un peu difficile d'inclure des balises HTML dedans.

    J'espère que le problème etait bien présenté, je vous remercie d'avance de vos propositions.

    Cordialement.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Avec GeSHi ?

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    le texte est contenu dans une zone de texte
    Tu parles d'un textarea ? Je ne pense pas qu'il soit pas d'avoir de la mise en forme dans un champ.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    195
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 195
    Points : 62
    Points
    62
    Par défaut
    Oui je parle des Textarea et aussi des petites zone de texte. Dans mon cas, le texte contenu dans l'un de ces champs est contenu dans une variable (par exemple $req) et je l'inclu dans le champs comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Input type="texte" name="requete" size="100" readonly="true" value="<?php echo "$req"; ?>"/>
    Pour votre réponse Julp, je m'informerai sur GeSHi...

    Je vous remercie pour vos réponses ^^

  5. #5
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    je ne crois pas que ce soit possible dans un textarea.

    par contre, tu peux faire ton highlight et le mettre dans un div

    tu as la fonction highlight_string, mais je sais pas s'il reconnait le sql.

    fr.php.net/manual/fr/function.highlight-string.php
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  6. #6
    Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    195
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 195
    Points : 62
    Points
    62
    Par défaut
    Merci encore pour vos réponses!

    L'outil que m'a proposé Julp marche très bien, je n'avais qu'à télécharger le dossier GeSHi ici et je me suis servi de ces lignes de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    include("geshi/geshi.php");
     
    $source = $req;
    $language = 'sql';
    $path = 'geshi/geshi/';
     
    $geshi = new GeSHi($source, $language, $path);
     
    echo $geshi->parse_code();
    L'avantage ici est qu'on a une multiplicité du choix du langage qu'on inscrit dans la variable $language

    Je tiens à signaler que je n'ai pas pu l'inclure dans une zone de texte mais j'ai utilisé un fieldset que j'ai coloré pour que ça ait l'apparence d'une zone de texte.

    Pour la fonction highlight_string, elle n'a pas marché avec le sql mais merci de me l'avoir proposé.

    Bon code à vous tous ^^

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

Discussions similaires

  1. [IP-2007] Autoriser les saut de pages dans une zone de texte enrichie
    Par jack_person dans le forum InfoPath
    Réponses: 4
    Dernier message: 04/11/2009, 06h16
  2. [AC-2000] Controler les informations saisies dans une zone de texte
    Par etoileetoile dans le forum VBA Access
    Réponses: 2
    Dernier message: 07/10/2009, 14h33
  3. Détecter les modifications faites dans une zone de texte avec la souris
    Par nosferapti dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 24/09/2009, 09h48
  4. Réponses: 8
    Dernier message: 17/12/2008, 11h03
  5. Réponses: 29
    Dernier message: 03/11/2005, 10h37

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