Rechercher : dans
Par :

[html] Imbrication de guillemets "multiples&q

Dernière réponse le 28 mai 2009 à 11:18:51 Julien, le 26 mai 2009 à 09:32:16 
 Signaler ce message aux modérateurs

Bonjour,

Je réalise un site web en php/javascript/html et j'ai un problème d'imbrication de guillemets. Voila les morceaux de codes :

en php, je commence par déclarer les variable $sEventPicName et $EventCaracteristique :

$sEventPicName = "<img class=\"photo1\" style=\"width:{$this->iThumbSize}px;height:{$this->iThumbSize}px;background-image:url({$site['sdatingImage']}{$sTypePic}{$sEventPicName});\" src=\"{$sSpacerName}\" alt=\"{$sAlt}\" />";

Jusque la tout va bien : si j'affiche $sEventPicName dans ma page web, j'ai la bonne image qui apparait.

Le probleme c'est que je veux faire afficher cette image quand la souris passe sur une balise div. Donc un peu plus loin dans le code j'ai écrit :

$sEventPic = <<<EOF

<div class="thumbnail_block">
<a href="{$sGenUrl}">
<div OnMouseOver="this.innerHTML='{$sEventPicName}';" OnMouseOut="this.innerHTML='{$EventCaracteristique}';">
{$EventCaracteristique}
</div>
</a>
</div>

EOF;


Et c'est la que ca bug : le premier double guillemet de <img class=\" vient fermer le guillemet du onmouseover quand le code est lu par un navigateur.

J'ai déjà essayé de mettre des \' ou \\\' ou \\\" mais sans succès ...
Quelqu'un aurait-il une solution ?

Merci de votre aide

Configuration: Windows XP
Firefox 3.0.10

Meilleures réponses pour « [html] Imbrication de guillemets "multiples&q » dans :
[PHP] Les ressemblances à ne pas confondre Voir Introduction Concaténation ou paramètres ? Guillemets/Apostrophe Structure require/include isset vs empty htmlentities ou htmlspecialchars ? Nombre de signes égal Introduction Cette astuce présente plusieurs fonction ou astuces en...
[Aspirateur de pages HTML] Comment aspirer un site Web ? VoirHTTrack est un excellent aspirateur, gratuit en licence GNU GPL (libre). HTTrack permet de télécharger un site web d'Internet vers votre disque dur, en construisant récursivement tous les répertoires, récupérant html, images et fichiers du serveur...
Javascript - Modifier la hauteur (height) d'un élément HTML VoirPour modifier la hauteur d'un élément HTML en javascript, il suffit d'utiliser sa propriété de style "height". Pour cela vous pouvez y faire référence de la manière suivante : Si vous souhaitez connaître la hauteur (height) d'un bloc HTML, il...
Les guillemets, apostrophes et les chaînes VoirComment jouer avec les guillemets et les apostrophes dans les chaînes 1. Préambule 2. Éviter une coupure dans la chaîne 3. Ajouter un guillemet dans la chaîne 3.1 Avec l'apostrophe 3.2 Avec l'ASCII 3.3 Directement 3.3.1 Méthode...
Télécharger HTML Tidy VoirHTML Tidy est un utilitaire permettant de vérifier et d'optimiser tout code HTML. La version originale de cet utilitaire s'utilise en mode de commande uniquement. La présente version, appelée "GUI Tidy", possède une interface graphique. Notez...
Caractères spéciaux HTML VoirCodage des caractères spéciaux Le standard HTML demande de respecter le codage des caractères ASCII 7 bits, c'est-à-dire que les caractères accentués ne sont pas autorisés. Il faut pour cela utiliser un codage particulier. Pour...
Les formulaires HTML VoirIntérêt d'un formulaire Les formulaires interactifs permettent aux auteurs de pages Web de doter leur page web d'éléments interactifs permettant par exemple un dialogue avec les internaute, à la manière des coupons-réponse présents dans certains...
Les balises HTML VoirHTML, un langage à balises Le HTML n'est pas un langage de programmation. Il s'agit d'un langage permettant de décrire la mise en page et la forme d'un contenu rédigé en texte simple. Une page HTML est ainsi un simple fichier texte...

1

Jodu, le 26 mai 2009 à 12:00:50

Bonjour,

as-tu essayé avec les antiquotes ?

Répondre à Jodu

2

Julien, le 26 mai 2009 à 14:01:16

Merci Jodu pour ta réponse.

L'imbrication " ' `` ' " fonctionne bien.

Mais maintenant je suis confronté à un autre problème. Le code html à afficher est le suivant :

<img class=`photo1` style=`width:110px;height:110px;background-image:url(http://xxx/xxx/xxx/xxx.gif);` src=`http://xxx/xxx/xxx/yyy.gif` alt=`ddd.jpg` />

Sous internet explorer pas de problème.
Mais Firefox n'affiche pas les images : il affiche `ddd.jpg` (avec les anti quotes ...)
Et la console m'indique :
Avertissement : Déclaration attendue, mais « ` » trouvé. Passage à la déclaration suivante.

Comment faire pour qu'il lise les anti quotes comme des quotes normales ???

merci

Répondre à Julien

3

Jodu, le 28 mai 2009 à 10:55:24

Salut,

HTML n'interprète que les quotes/doubles quotes.

La solution serait de mettre des simples quotes à la place de tes antiquotes.
Ton code complet m'aiderait.
Tu sais, faire un truc genre ` "<img src='gnagna'.../>" `
En php, cela fonctionne si c'est bien fait.

Répondre à Jodu

4

Julien, le 28 mai 2009 à 11:16:25

Salut Jodu et merci pour ton aide.

Avant j'avais essayé le \" qui ne fonctionne pas puisqu'il referme le OnMouseOver ...
En fait j'ai trouvé la solution. Le \' marche :

Dans le code javascript : OnMouseOver="this.innerHTML='{$maVariable}';"
Dans le code php : $maVariable="<img src=\'xxxxx\' />";

A l'intérieur de ma balise <div>, il faut enlever les slashs puisqu'il s'agit directement du code HTML : stripslashes($maVariable);

Voila j'espère que ca servira à d'autre.

A bientot

Répondre à Julien

5

 Jodu, le 28 mai 2009 à 11:18:51

Mais de rien ;)

Pas bête du tout, j'y avais pas pensé ><

A trop faire compliqué hein...

Répondre à Jodu
Collection CommentÇaMarche.net