Bonjour,

Je développe un back-office permettant de stocker des scripts de plusieurs langages (php, sql,...). L'outil permet d'éditer ces scripts.

Les codes sont stockés en base MySQL, après avoir été traités par un htmlentities() en php, par exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
<?php
echo '<strong>coucou</strong>';
(ce qui correspond à un <?php echo '<strong>coucou</strong>'; )

Ils sont affichés dans un tableau html, avec un html_entity_decode() pour recréer les entités html, par exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
<td class="code">
    <img title="&lt;?php
echo '&lt;strong&gt;coucou&lt;/strong&gt;';" id="details-2" alt="Détails" src="images/details.png">
</td>
Le code pouvant être assez long, on l'affiche dans un title pour ne pas rendre illisible le tableau qui les contient tous.

Lorsqu'on souhaite éditer une entrée, on l'affiche dans une lightbox (avec dialog de jQueryUI). Je récupère le code avec jQuery :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
var code = $('tr#' + id + ' td.code img#details-' + id).attr("title");
Or je ne parviens pas à récuperer le code. Dans mon exemple, la variable code vaut :

alors que je voudrais qu'elle ait la valeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<?php echo '<strong>coucou</strong>';
Je bloque sur la partie JS pour traiter l'entrée comme une chaîne telle quelle, sans que les balises (<?php par exemple) ne soient interprêtées.

Savez-vous comment faire ? Merci pour votre aide.