TEXTAREA et validité XHTML strict

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


sim100
WRInaute accro
WRInaute accro
 
Messages: 1271
Inscription: Dim Fév 02, 2003 18:45

TEXTAREA et validité XHTML strict

Message le Jeu Mar 23, 2006 18:00

Bonjour
Un petit problème que je n'arrive pas à résoudre:

J'ai dans mon site un TEXTEAREA avec dedans un code qui se génère afin de permettre aux visiteurs de réccupérer le code de la page de mon site.

Voila le code

Code: Tout sélectionner
<textarea name="textarea" cols="16" rows="3"><? echo "<a href='http://"; if ($lang=="en") {echo "www";} else {echo $lang;} echo ".the-world-in-photos.com'><img src='http://www.the-world-in-photos.com/stickers/button-88-31.gif' title='".TITLE."' alt='' /></a>"; ?></textarea>


A cause de ce code je ne suis pas valide!

Je remarque que:
Si j'enlève le TEXTEAREA, je suis valide.
Si je laisse le TEXTEAREA et que j'enlève le texte dedans, je suis valide!!!

Voila l'erreur que j'ai sinon:
Code: Tout sélectionner
Line 119 column 90: document type does not allow element "a" here.
...='http://www.the-world-in-photos.com'><img src='http://www.the-world-in-photo
The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).


Merci si vous avez une solution


Szarah
WRInaute accro
WRInaute accro
 
Messages: 8090
Inscription: Mer Fév 22, 2006 18:24

Message le Jeu Mar 23, 2006 19:21

Dans le contenu du Textarea, remplace les < par des &lt; et les > par des &gt;


jOoL
WRInaute impliqué
WRInaute impliqué
 
Messages: 466
Inscription: Mer Mai 04, 2005 23:02

Message le Jeu Mar 23, 2006 20:11

Tu as une erreur car tu mets une balise <A > dans une balise <textarea> ce qui n'est normalement pas juste...

Pour résoudre ton problème, tu dois écrire tes balises <A> et <IMG> comme du texte, donc "traduire" les "> et <"

Ce qui donne donc:

Code: Tout sélectionner
<textarea name="textarea" cols="16" rows="3">
<?php 
echo "&lt;a href='http://";
if ($lang=="en") {
        echo "www";
} else {
        echo $lang;
}
echo ".the-world-in-photos.com'&gt;&lt;img src='http://www.the-world-in-photos.com/stickers/button-88-31.gif' title='".TITLE."' alt='' /&gt;&lt;/a&gt;";

?>
</textarea>




Ton code sera affiché correctement dans ta box, et tu devrais à nouveau être valide!

ps: juste pour faire plus propre, je ferais ça comme ça:

Code: Tout sélectionner
<?php

$text = "&lt;a href='http://";
if ($lang=="en") {
        $text .= "www";
} else {
         $text .=$lang;
}
$text .= ".the-world-in-photos.com'&gt;&lt;img src='http://www.the-world-in-photos.com/stickers/button-88-31.gif' title='".TITLE."' alt='' /&gt;&lt;/a&gt;";

?>
<textarea name="textarea" cols="16" rows="3">
<?php echo $text; ?>
</textarea>





jOoL


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités