Flash detection --> Fehler, wo?

online

Erfahrenes Mitglied
Hallo,

ich hab ein Flash detection script, das schaut, ob Flash installiert ist, oder nicht und dann entweder das Flash oder falss nicht, dann ein Bild anzeigt.

Das funktioniert eigentlich auch.
Also, wenn jemand überhaupt einen Flahplayer auf dem pc hat, wird das Flash angezeigt und wenn nicht, das Bild.

Aber eigentlich sollte es die Version überprüfen und wenn jemand Version 5 hat, aber Version 6 benötigt wird, sollte das Bild angezeigt werden.
Genau das funktioniert nicht.

ich weiß nich warum:

PHP:
 var ver = 0;
    var javaOn = false;
    var ShockMode = 0;
    var gFlashPluginTargetVersion = 6;
    var gFlashPluginName;
    var gFlashPluginFilename;
    var plug = 0;
    var gUserOS = OS_Check();
    ver = parseInt(navigator.appVersion.substring(0,1));

    // Welches Betriebssystem?

    function OS_Check()
    {
        var userPlat = "unknown";
        var navInfo = navigator.appVersion;
        if (navInfo.indexOf("Win") != -1)                userPlat = "Win";
            else if (navInfo.indexOf("Macintosh") != -1) userPlat = "PPC";
            else if(navInfo.indexOf("68K") != -1)        userPlat = "68K";
        return userPlat;
    }

    // Flash-Pruefung Netscape Navigator

    function checkNetscape()
    {
        if(navigator.appName == "Netscape")
        {
            for(i=0;i<navigator.plugins.length;i++)
            {
                if (  (navigator.plugins[i].description.indexOf("Flash 3.0") >= 0)
                   || (navigator.plugins[i].description.indexOf("Flash 4.0") >= 0)
                   || (navigator.plugins[i].description.indexOf("Flash 5.0") >= 0)
				   || (navigator.plugins[i].description.indexOf("Flash 6.0") >= 0)
				   || (navigator.plugins[i].description.indexOf("Flash 7.0") >= 0))
                {
                    plug = 1
                    break;
                }
            }
        }

        // Flash-Pruefung Netscape Internet Explorer auf Win95,98,NT
        // keine Pruefung auf Macintosh da keine Active-X-Unterstützung

        else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 &&  navigator.userAgent.indexOf("Win")>=0)
        {
            document.write('<SCR'+'IPT LAN'+'GUAGE=VB'+'Scr'+'ipt\> \n');
            document.write('on error resume next \n');
            document.write('ShockMode = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3")))\n');
            document.write('</SCR'+'IPT>');
            if(ShockMode) plug  = 1;
        }
    }

    if(ver == 4)
    {
        if(navigator.javaEnabled()) javaOn = true;
    }

    if(ver > 2) checkNetscape();



function flash(src,srcjpg,width,height) {
    				if(plug == 1) { 
						document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,00,0" width='+width+' height='+height+' />');
						document.write('<param name="movie" value='+src+' /> <param name="quality" value="high" /> <param name="menu" value="false" />'); 
						document.write('<embed src='+src+' quality="high" width='+width+' menu="false" height='+height+' type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
						document.write('</embed>');
						document.write('</object>');
					}
					
					else { document.write('<img src='+srcjpg+' width='+width+' height='+height+' alt="" />'); 
					}
}


Hoffe auf Hilfe!

MFG

Online
 
Mir ist jetzt mal spontan aufgefallen, dass bei Deinem OS-Check zum Beispiel Linux fehlt.
Dass Du die *BSD-Systeme, BeOS, etc. nicht drin hast kann ich noch verkraften, aber dass Linux nicht auftaucht muss ich dann doch mal ansprechen.
 
Was mir auffällt... du prüft dort alles von v3-V7 .
Wenn V6 Minimum sein soll, dann lasse die anderen Sachen weg.

Ansonsten... da man anscheinend die Flash-Version komfortabel mit Flash selbst ermitteln kann( http://www.tutorials.de/tutorials192372.html )... und Flash auch mit Javascript zusammenarbeiten kann(glaube ich zumindest, einigen Threads hier entnommen zu haben)... wäre das doch ein sinnvollerer Weg(der dann auch beim MAC funktionieren sollte).
 
Sven Mintel hat gesagt.:
Ansonsten... da man anscheinend die Flash-Version komfortabel mit Flash selbst ermitteln kann( http://www.tutorials.de/tutorials192372.html )... und Flash auch mit Javascript zusammenarbeiten kann(glaube ich zumindest, einigen Threads hier entnommen zu haben)... wäre das doch ein sinnvollerer Weg(der dann auch beim MAC funktionieren sollte).

Jedoch duerfte das nicht funktionieren wenn kein Flash installiert ist, oder?
 

Neue Beiträge

Zurück