IPB

Bienvenue invité ( Connexion | Inscription )

> Flash: détection du player en PHP, vos avis?
Options
toluol
posté 10 Oct 2005, 22:43
Message #1


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 792
Inscrit : 14 Nov 2003
Lieu : Genève
Membre no 11 656



Je suis en train de faire un site à moitié en php... et à moitié en flash... et je voudrais quand même m'assurer que le site s'affiche correctement si par malheur, un citoyen du net, n'aurais pas encore flash player... J'aimerais avoir une variable php qui m'indique si oui ou non, l'utilisateur de mon site possède le player de façon à ce que mon site s'affiche différemment et qu'il soit renvoyé à un lien pour télécharger "tout le bazzare"... au cas où....

J'aimerais récolter aussi vos avis...

-Utilisez vous souvent des détecteurs flash player? Est-ce encore utile?

-Est-ce que celui qui suit (très simple) pourrait suffire dans la majorité des cas?

CODE

<?php
if (strstr($_SERVER['HTTP_ACCEPT'], 'application/x-shockwave-flash'))
{
$hasFlash=true;
}
?>


merci.
Go to the top of the page
 
+Quote Post
 
Start new topic
Réponse(s)
guiguiguillaume
posté 11 Oct 2005, 07:06
Message #2


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 1 779
Inscrit : 7 Jan 2003
Lieu : Montréal
Membre no 5 496



Oui, j'utilise des détecteurs.
J'utilise texto ceux fournis par macromedia (parce que même s'ils sont longs, ils sont testés), disponibles sur leur site.

http://www.macromedia.com/software/flashpl.../detection_kit/

Il n'y a jamais de solution parfaite... les détections côté client se heurtent à l'activation de scripting (Javascript / VBScript sur PC (et au support correct de la balise <object> qui n'est réellement pas très courant), les détections côté serveur nécessitent Flash 6.0.65 pour répondre "oui", et dans mon cas, si le client a Flash 6.0.65, alors, il a toujours tout ce qu'il me faut (je n'utilise pas de fonctions apparues en Flash 7 ou 8, d'ailleurs, je n'ai pas Flash 7 ou 8).
La détection basée sur ActionScript est efficace pour s'assurer de la version de Flash installée, mais évidemment pas pour vérifier à la base si Flash est installé.

En l'occurence, donc, j'utilise les détections par Javascript. Si l'utilisateur a désactivé JS, je considère que c'est une sorte de power user (ou alors, c'est quelqu'un qui clique n'importe où pour voir ce que ça fait), et qu'il n'aime probablement pas le site en flash de toute façon, donc, il sera content de tomber directement sur la version HTML. Les notes de pied de page sur la version HTML incluent au cas où un lien vers la version flash.
Si son navigateur ne supporte pas le Javascript, c'est qu'il ne supporte pas le Flash non plus, alors pas de souci de ce côté.
Avec cette façon de procéder, en plus, l'index n'est pas la version flash (le js de détection est chargé en premier et le cas échéant, redirige vers Flash), et le site peut donc être totalement indéxé par les moteurs de recherche. Si on accède au site via un moteur de recherche, on tombe sur la page HTML complète directement (alors que si la redirection était active sur toutes les pages, l'utilisateur serait ramené à la page de garde flash, ce pour quoi il n'a pas cliqué). S'il revient plus tard, met le site en bookmark, ou lit les pieds de page, il pourra alors tomber directement sur le flash.

Voilà ma politique. Sans doute pas parfait, mais, eh, rien n'est parfait. Tu peux aussi aller sur le blog d'Ifmy pour y lire sa méthode de détection et de chargement de contenu alternatif (il a aussi fait un post à ce sujet ici).

Tu trouveras en tout cas dans le lien proposé au dessus l'avis de Macromedia et leurs propres scripts pour les 3 méthodes de redirection (server-side par HTTP_ACCEPT ou équivalent, client-side par script, ou plugin-side par Actionscript).


--------------------
guigui - 15,2" et même 20 de plus pour laisser courir le tigre.
Go to the top of the page
 
+Quote Post
toluol
posté 11 Oct 2005, 08:47
Message #3


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 792
Inscrit : 14 Nov 2003
Lieu : Genève
Membre no 11 656



QUOTE(guiguiguillaume @ 11 Oct 2005, 07:06)


Oui, j'ai vu dans ce kit, le code php que j'ai noté plus haut.

Je ne suis cependant pas très à l'aise avec le javascript...

Peut-on transmettre ensuite une variable "de détection" de javascript à PHP? (du genre: si variablejavascript=oui, alors $variablephp = "oui";) Et changer, du coup, légèrement ce code:
CODE

<script language=VBScript>
<!-- // Detect Flash Player ActiveX control version information
Function VBGetSwfVer(i)
on error resume next
Dim swControl, swVersion
swVersion = 0

set swControl = CreateObject("ShockwaveFlash.ShockwaveFlash." + Cstr(i))
if (IsObject(swControl)) then
swVersion = swControl.GetVariable("$version")
end if
VBGetSwfVer = swVersion
End Function
// -->
</script>


Comme je ne comprends pas bien ce que fais ce code JS...
Go to the top of the page
 
+Quote Post

Les messages de ce sujet


Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 14th January 2026 - 12:32