Avatar billede fru_t Nybegynder
23. marts 2004 - 16:26 Der er 11 kommentarer og
1 løsning

Du har ikke flash-player, den kan du hente

Hej!

Jeg har lavet en side med en flash-fil. Men det er jo ikke alle, der har en flash-player, og disse folk skal gerne få en besked om, at de ikke har flash - og så et link til, hvor flash-playeren kan hentes.

Hvordan gør man det smartest?

(Min swf-fil ligger på en php-side)

/fru_t
Avatar billede nikolajdu Nybegynder
23. marts 2004 - 16:30 #1
Avatar billede fru_t Nybegynder
23. marts 2004 - 16:55 #2
Hej Nikolajdu!

Det lyder vældig smart - især til html. Men hvad med php? Jeg synes ikke, der ser ud som om, moockfpi er skabt til php.

/Rikke
Avatar billede nikolajdu Nybegynder
23. marts 2004 - 18:33 #3
Du ændrer bare filnavnene til .php i stedet for .html.
Avatar billede nikolajdu Nybegynder
23. marts 2004 - 18:35 #4
Åben javascript filerne og ret dine oplysninger :

var requiredVersion = 7; // eller 5,6 hvad du ønsker

Hvor skal flash gå hen :

var flashPage  = "index.php?flash=true"    // The location of the flash movie page
var noFlashPage = "index.php?flash=false"  // Page displayed if the user doesn't have the
// plugin or we can't detect it.
var upgradePage = "index.php?flash=oldversion"  // Page displayed if we detect an old plugin
Avatar billede nikolajdu Nybegynder
23. marts 2004 - 18:37 #5
Så må du på index.php lave en :

<?php
if(isset($_GET["flash"]) && $_GET["flash"] == true;){
print "du har flash";
}
?>
Avatar billede fru_t Nybegynder
24. marts 2004 - 08:17 #6
Hej Nikolajdu!

Jeg har en helt færdig php-side med masser af inkluderede sider osv., så jeg har egentlig brug for at få at vide, om jeg kan hive et script ud af "du har ikke flash"-filerne og sætte det ind i php'en - og i så fald, hvor i php'en de skal ligge.

Undskyld hvis jeg er alt for besværlig ...

/fru_t
Avatar billede fru_t Nybegynder
24. marts 2004 - 10:36 #7
Ny løsning - nyt problem ... men måske lidt lettere at løse.

På en php-side har jeg en flashfil (version 7), med det simple indhold, at den viderestiller til den "rigtige" url, hvis personen der åbner den første php-side har flash.

Hvis personen ikke har flash, kan man af gode grunde ikke blive viderestillet, men i stedet bliver man via et php-script viderestillet til en "no-flash"-side (efter 5 sekunder).

Problemet er blot, at en computer med flash 4 (eller sådan) desværre kan læse version 7-flashens viderestilling. Det er ikke meningen. Det skal være sådan, at hvis man ikke har den seneste version af flash, så bliver man ikke viderestillet af flash-scriptet, men ryger til "no-flash"-siden.

Det må man kunne lave ganske simpelt ... ?? eller hvad?

I publish settings i flash har jeg tjekket, at den publiseres som flash 7. Men der skal åbenbart også andet til.

/fru_t
Avatar billede nikolajdu Nybegynder
24. marts 2004 - 10:52 #8
Ja du skal ind og rette i javascriptet. Der findes 2 versioner én med redirect og en hvor man bliver på siden hvis man har flash og ryger videre hvis ikke men det har jeg aldrig brugt :)
Avatar billede fru_t Nybegynder
24. marts 2004 - 12:22 #9
En ven har fundet dette script til mig. Det virker i hvert fald i php.

Dette smides ind mellem <head> og </head>:

<script type="text/javascript">
<!--

var flashinstalled = 0;
var flashversion = 0;
MSDetect = "false";
if (navigator.plugins && navigator.plugins.length)
{
x = navigator.plugins["Shockwave Flash"];
if (x)
{
flashinstalled = 2;
if (x.description)
{
y = x.description;
flashversion = y.charAt(y.indexOf('.')-1);
}
}
else
flashinstalled = 1;
if (navigator.plugins["Shockwave Flash 2.0"])
{
flashinstalled = 2;
flashversion = 2;
}
}
else if (navigator.mimeTypes && navigator.mimeTypes.length)
{
x = navigator.mimeTypes['application/x-shockwave-flash'];
if (x && x.enabledPlugin)
flashinstalled = 2;
else
flashinstalled = 1;
}
else
MSDetect = "true";


// -->
</script>

<script language="VBScript">



on error resume next

If MSDetect = "true" Then
For i = 2 to 10
If Not(IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & i))) Then

Else
flashinstalled = 2
flashversion = i
End If
Next
If flashinstalled = 0 Then
flashinstalled = 1
End If
End If

</script>



Dette smides ind mellem <body> og </body> (som det eneste):

<script type="text/javascript">
<!--
if (flashinstalled == 2)
{
if (flashversion >= 7)
setTimeout("location.replace('flash-ok.php')",500);
else
setTimeout("location.replace('flash-bad.php')",500);
}
else
setTimeout("location.replace('flash-bad.php')",500);

// -->
</script>

/fru_t

PS: Nikolajdu, hvis du smider et svar, giver jeg point. For du hjalp jo - det var bare mig, der blev lidt besværlig :)
Avatar billede nikolajdu Nybegynder
24. marts 2004 - 12:25 #10
Det er i orden at være besværlig :))
Avatar billede nikolajdu Nybegynder
24. marts 2004 - 12:49 #11
Tak for point :))
Avatar billede fru_t Nybegynder
24. marts 2004 - 13:08 #12
Det var så lidt! Jeg siger tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester