furious Gontran Posté 21 Novembre 2005 Posté 21 Novembre 2005 Bonjour, Voici mon code pour integrer du flash à ma page: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="655" height="145"> <param name="movie" value="images/InfiniteMenu.swf"> <param name="quality" value="high"> <embed src="images/InfiniteMenu.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="655" height="145"></embed></object> C'est le code fournis par dreamweaver. Voici ce que me dis le validateur W3C: Line 137 column 17: there is no attribute "SRC". <embed src=images/InfiniteMenu.swf quality="high" pluginspage="http://www. Line 137 column 23: element "EMBED" undefined. <embed src=images/InfiniteMenu.swf quality="high" pluginspage="http://www. Line 137 column 183: end tag for element "EMBED" which is not open. ...ash" width="655" height="145"></embed></object> Alors... ma source est bien donnée (avec ou sans guillemets ca change rien) La balise embed n'est pas W3C ?? Je dois l'enlever ? Quelles en seront les consequences ??
hcplayer Posté 21 Novembre 2005 Posté 21 Novembre 2005 <object type="application/x-shockwave-flash" data="../.swf" width="730" height="560"> <param name="wmode" value="Transparent"> <param name="movie" value="../.swf"> <param name="quality" value="high"> <param name="menu" value="false"></object> Voila le code que j'utilise
furious Gontran Posté 21 Novembre 2005 Auteur Posté 21 Novembre 2005 (modifié) Ah ok... alors la balise embed est devenue obsolete sauf pour dream ??? De plus, Mon code php me provoque des erreurs comme par exemple echo "<a href='machin.php?id=".$id."">tut</a>"; Car il considere id comme l'id HTML... C'est grave docteur ? ou je peux laisser ca comme ca ? Modifié 21 Novembre 2005 par furious Gontran
hcplayer Posté 22 Novembre 2005 Posté 22 Novembre 2005 en théorie ca ne doit pas provoquer d'erreur non, tu as un exemple de page?
Dudu Posté 23 Novembre 2005 Posté 23 Novembre 2005 Si la variable $id contient des caractères comme des esperlettes (&), le validateur va bloquer dessus. D'ailleurs, si ta page est XHTML, c'est en fait n'importe quel parseur XML qui va bloquer. Il faut les encoder & donnera donc & par exemple, et c'est le navigateur qui va se charger tout seul de restituer une esperlette normale. Le plus simple et le plus sage est de faire appel à la fonction PHP htmlspecialchars() avec dedans la variable à encoder. Plus complexe (donc plus puissant aussi): la fonction PHP htmlspecialentities()à utiliser de la même manière qu'htmlspecialchars la fonction PHP ini_set() pour changer dans une seule page PHP tous les séparateurs d'argumentsexemple:<?php ini_set('arg_separator.output','&'); ?> une règle Apache à placer dans un .htaccess pour faire la même chose que précédemment, mais sur tout un répertoirephp_value arg_separator.output & enfin le summum du top du best: éditer son fichier php.ini (si l'on y a accès, c'est-à-dire quand on a son propre serveur ou un dédié):arg_separator.output = "&" PS: la balise <embed> est effectivement dépréciée par le w3c. Et sinon le meilleur moyen d'insérer du Flash proprement reste la méthode Flash Satay (Flash Satay en VO, Flash Satay en français)
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant