Chargement de la page d'acceuil en fonction de la présence de flash

Soyez le premier à donner votre avis sur cette source.

Vue 12 271 fois - Téléchargée 714 fois

Description

Ce code va tester si le navigateur supporte le flash et va afficher la
page en fonction du résultat .

Source / Exemple :


<?
if(!isset($_REQUEST["flash"]))
{//On vérifie si le test n'a pas eu lieu (premier chargement). 
$redir="<meta http-equiv='refresh' content='01;url=index.php?flash=no'/>";
//Explication : si le navigateur ne possède pas de plugin flash il ne pourra pas charger l'animation
// donc la page ne pouvant ètre affichée on la redirige, au bout d'une seconde (content='01..., mais sur elle-même,avec le paramètre : flash=no

}
else{
//Sinon le test a été effectué on ne redirigera pas la page.
$redir="";
?>
<html><head><?= $redir ?>
<script language="javascript">
 function popup(page,id,option){ 
 //simple fonction de popup 
 var oki=window.open(page,id,option);
 if(!oki){
 //Si le popup n'est pas ouvert=anti-popup activé
 alert("Votre anti-popup est activé :(");}
 }
</script>
</head>
<body><center>

<?
if(!isset($_REQUEST["flash"])){
//idem que pour $redir : si le test n'a pas été effectué,on tente de charger l'animation flash
?>

<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="1" height="1">
  <param name="movie" value="autodetect.swf">
  <param name="quality" value="high">
  <embed src="autodetect.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="1" height="1"></embed>
</object>
<?
}
else{
//sinon on affiche la page en fonction du résultat du test
if($_REQUEST["flash"]=="yes"){//c'est le résultat renvoyé par le .swf s'il a bien été chargé?>
Vous possédez le lecteur flash qui vous permet d'accéder à la version en<b><a href='flash.html' style='color:red;'> FLASH </a></b> de ce site<br>
ainsi qu'à la version<b><a href='php.html' style='color:red;'> PHP </a></b><br> <? }
else if($_REQUEST["flash"]=="no"){//c'est le résultat renvoyé par la balise méta si l'animation n'a pas pu être chargée.
?>

Vous ne possédez le lecteur flash qui vous permet d'accéder à la version en<b><font style='color:red;'> FLASH </font></b> de ce site<br>
mais vous pouvez accéder à la version<b><a href='php.html' style='color:red;'> PHP </a></b> ou télécharger le lecteur <b><a href='#' onclick="popup('http://www.macromedia.com/go/getflashplayer/','dl','width=300,height=300,left=200,top=200,scrollbars=yes,toolbars=yes,resizable')" style='color:blue;'> ICI </a></b><?
}
}?>
</center>
</body></html>

Conclusion :


Explication du fla :

L'animation va rediriger la page sur elle-même (_self) avec le paramètre : flash=yes.
Il faut modifier le valeur index.php?flash=yes avec le nom de votre page contenant l'animation
( ex : mapage.php?flash=yes)

Explication du php :

Voir les commentaires du code

Bug : Il est arrivé parfois que la page se charge en boucle , je pense que c'est le paramètre de la balise méta qui est parfois trop court dans ce cas là modifiez-le à trois secondes au lieu d' une.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
ici, je considère franchempent la partie php comme un gros détail...

la partie js va embèter l'utilisateur...
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Mais PHP est un langage exécuté côté serveur, donc le navigateur ne voit pas le code PHP, donc non les serveurs ne comprennent pas tous PHP, ceux ayant la directive short_open_tags à Off ne liront pas ton code PHP si il est situé entre <? et ?>

Ensuite le script type="text/javascript" c'est pour la validation XHTML, il me semble (faudrait regarder) que le language n'est plus valide. En plus je trouve personellement ça plus propre, c'est comme le <style type="text/css"

a +
Messages postés
148
Date d'inscription
dimanche 25 janvier 2004
Statut
Membre
Dernière intervention
21 janvier 2009

<?php au lieu de <?:
j'ai déjà posé la question plein de fois:
voici ma conclusion:
<?php est important pour le lecteur, c'est comme un commentaire dans ta source.
les browser comprennent tous <?, mais quand tu précise "<?php" tu dis bien : "la je commence mon code php".

on m'a dit également que d'autres langages peuvent s'intercaler ayant aussi pour balise "<?"
.
Ca évite donc de faire la confusion.

le <?=$variable?> lui est un peu barbare. C'est juste mais tres peu explicite.
avec <? echo $variable; ?>, on comprend mieu.

par contre le "<script type="text/javascript"> à la place du language="javascript">", là, je n'en ai aucune idée...
Plus rigoureux sans dote, mais pas forcément utile à la comprhésiion.
anthomicro va pouvoir nous éclairer....
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
mais IL AURA PAS ENVIE DE L'ENLEVER !!!

un anti pop-up est fait pour ne pas pouvoir etre contourné...
Messages postés
7
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
17 mars 2005

ah oki ..

Mais je le but n'est pas de lui "apprendre" qu"il a un anti-popup activé mais de lui signifier qu'il doit le désactiver
(en général ils sont paramètrable par site (ex : toolbar google))
pour continuer la navigation .
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.