xp-user
Goto Top

Random Flash player aber wie?

Folgende Situation:

4 flash Movies *.flv in einem Ordner. Beim Laden der Seite soll per Random eines der vier abgespielt werden. Wie krieg ich das blos hin?

Javascript? PHP oder HTML?

Wäre dankbar um Hilfe.


Habe das hier gefunden, jedoch ist das mit swf's und nicht mit flv's. :-S

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"  
   "http://www.w3.org/TR/html4/strict.dtd">  
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">  
<style type="text/css">  
#display {
    width:600px;
    line-height:30px;
    border:3px double #09c;
    font-family:time,serif;
    font-size:16px;
    text-align:center;
    margin:20px auto;
 }
</style>
<script type="text/javascript">  
/***********************************************
* Random Video Script- ©
* Author: Raymond Angana
* rangana in AHFB2000.com
* modified last May 2, 2008
* This notice MUST stay intact for legal use
***********************************************/
var v1,v2,v3,v4,v5,rangVideo;
/********************************Edit this part for the videos*********************************/
v1='<object width="400" height="400"><param name="movie" value="http://www.w3schools.com/flash/ball.swf"><embed src="http://www.w3schools.com/flash/ball.swf" width="400" height="400"></embed></object>';  
v2='<object width="400" height="400"><param name="movie" value="http://www.w3schools.com/flash/mouse.swf"><embed src="http://www.w3schools.com/flash/mouse.swf" width="400" height="400"></embed></object>';  
v3='<object width="400" height="400"><param name="movie" value="http://www.w3schools.com/flash/colorchange.swf"><embed src="http://www.w3schools.com/flash/colorchange.swf" width="400" height="400"></embed></object>';  
v4='<object width="400" height="400"><param name="movie"value="http://www.w3schools.com/flash/helloworld.swf"><embed src="http://www.w3schools.com/flash/helloworld.swf" width="400" height="400"></embed></object>';  
v5='<object width="400" height="400"><param name="movie" value="http://www.w3schools.com/flash/button2.swf"><embed src="http://www.w3schools.com/flash/button2.swf" width="400" height="400"></embed></object>';  
/********************************************************************************************/
rangVideo=[v1,v2,v3,v4,v5]; // This depends on the number of videos you have.
window.onload=function() 
{
   rangProc=Math.floor(Math.random()*rangVideo.length);
   document.getElementById('display').innerHTML=rangVideo[rangProc];  
 }
</script>
</head>
<body>
<div id="display">  
</div>
</body>
</html>

Content-Key: 138059

Url: https://administrator.de/contentid/138059

Ausgedruckt am: 29.03.2024 um 15:03 Uhr

Mitglied: Arano
Arano 12.03.2010 um 11:06:50 Uhr
Goto Top
Morgen,

soweit ich weis helft dir noch ein Flashplayer *.swf der deine Viedos *.flv abspielt.
Dem Player wirst du wahrscheinlich das wiederzugebende Video als Parameter übergeben.
Wenn du kannst, dann nimm PHP !
  • Mit HTML kannst du in dem Sinne eh Nix anfangen und
  • Javascript funktioniert nicht immer
  • PHP dagegen wird Serverseitig ausgeführt und man kann daher sage, das dieses immer funktionieren wird.

Ein weitere Vorteil ist:
Du kannst mit PHP deinen Ordner in dem sich die Videos befinden durchsuchen und von allen Inhalten eines aussuchen lassen. So bäuchtest du in Zukunft wenn weitere Videos dazukommen oder welche ausgetauscht werden, die einfach nur in den Ordner schmeissen und PHP macht den Rest - ganz ohne selbst irgendwo in einem Quelltext die Dateinamen ändern zu müssen.


~Arano
Mitglied: CadelPigott
CadelPigott 12.03.2010 um 11:46:07 Uhr
Goto Top
Hallo xp-user,

vielleicht hilft dir der FLV-Player von Videospark. Eine Anleitunf findest du hier: http://www.gdcreations.de/blog/?p=6

Gruß
Cadel Pigott
Mitglied: xp-user
xp-user 12.03.2010 um 12:57:35 Uhr
Goto Top
Zitat von @Arano:
Morgen,

soweit ich weis helft dir noch ein Flashplayer *.swf der deine Viedos *.flv abspielt.
Dem Player wirst du wahrscheinlich das wiederzugebende Video als Parameter übergeben.
Wenn du kannst, dann nimm PHP !
  • Mit HTML kannst du in dem Sinne eh Nix anfangen und
  • Javascript funktioniert nicht immer
  • PHP dagegen wird Serverseitig ausgeführt und man kann daher sage, das dieses immer funktionieren wird.

Ein weitere Vorteil ist:
Du kannst mit PHP deinen Ordner in dem sich die Videos befinden durchsuchen und von allen Inhalten eines aussuchen lassen. So
bäuchtest du in Zukunft wenn weitere Videos dazukommen oder welche ausgetauscht werden, die einfach nur in den Ordner
schmeissen und PHP macht den Rest - ganz ohne selbst irgendwo in einem Quelltext die Dateinamen ändern zu müssen.


~Arano

hm, tönt gut. Hab leider zu Php kein Script gefunden... Wie würde das ausschauen?
Mitglied: Arano
Arano 13.03.2010, aktualisiert am 30.03.2023 um 02:13:00 Uhr
Goto Top
Zitat von @xp-user:
hm, tönt gut. Hab leider zu Php kein Script gefunden... Wie würde das ausschauen?
Hm... dabei gibt es auf PHP.net schon die "schwierige" hälft: http://de2.php.net/opendir :-P
Aber meine Variante könnte so aussehen:
<?php

/* OPTIONEN */
$strVideoDir = './flvs'; // Name des Verzeichnis aus dem die Datei stammen soll.  

/* AUFRUF */
echo 'Zufallsdatei eines Ordners: '.random_file($strVideoDir);  
echo '<hr>Geschrieben fuer XP-User';  

/* FUNKTION */
/**
 * random_file()
 * Gibt eine Zufallsdatei eines Verzeichnises zurueck das als Parameter an die
 * Funktion uebergeben wird.
 * @param $strDir string Pfad eines Verzeichnises.
 * @return string Zufallsdatei des Verzeichnises.
 */
function random_file($strDir=NULL)
{
    $hDir     = NULL;
    $arrFiles = array();
    
    // Wenn in dem Verzeichnis nicht gelsen werden kann oder es nicht existiert.
    if(!is_dir($strDir) or !is_readable($strDir))
        trigger_error('Das Videoverzeichnis ist nicht lesbar oder existiert nicht', E_USER_ERROR);  
        
    // Oeffne Verzeichnis.
    $hDir = @opendir($strDir);
    if(!is_resource($hDir))
        trigger_error('Das Videoverzeichnis konnte nicht geoeffnet werden', E_USER_ERROR);  
    
    // Lese Dateien aus dem Verzeichnis und speichere sie in einem Array - mit ausnahmen.
    while($strFile = readdir($hDir))
    {
        // Die ausnahmen die uns nicht interessieren.
        if(in_array($strFile, array('.','..')))  
            continue;
        $arrFiles = $strFile;
    }
    
    // Gebe einen Zufallsdateinamen aus dem Array zurueck.
    return $arrFiles[array_rand($arrFiles)];
}
?>

Ein schönes Wochenende
~Arano
Mitglied: Axel69
Axel69 14.03.2010 um 22:30:14 Uhr
Goto Top
Oder JW-Player (http://www.longtailvideo.com/)
Unterstüzt auch Random-Play.
Mitglied: xp-user
xp-user 16.03.2010 um 10:48:51 Uhr
Goto Top
Das werde ich jetzt ausprobieren, ... also wenn ich dazukomme, aber besten Dank im voraus
Mitglied: xp-user
xp-user 16.03.2010 um 11:04:59 Uhr
Goto Top
Zitat von @Arano:

// Wenn in dem Verzeichnis nicht gelsen werden kann oder es nicht existiert.
if(!is_dir($strDir) or !is_readable($strDir))
trigger_error('Das Videoverzeichnis ist nicht lesbar oder existiert nicht', E_USER_ERROR);

diese Zeile gibt mir einen Error:
Fatal error: Das Videoverzeichnis ist nicht lesbar oder existiert nicht in /httpdocs/video/flvs/index.php on line 37

schreibrechte hab ich gegeben. Woran kann es sonnst noch liegen?
Mitglied: Arano
Arano 16.03.2010 um 19:41:11 Uhr
Goto Top
Hallo

Fatal error: Das Videoverzeichnis ist nicht lesbar oder existiert nicht in /httpdocs/video/flvs/index.php on line 37
Der Ordner aus dem die Videos gelesen werden sollen muss sich in dem Verzeichnis befinden in dem sich die Datei befindet die das Script ausführt. In deinen Fall tippe ich mal auf "flvs", also müsste deine Verzeichnisstruktur so aussehen:
/httpdocs/video/flvs/index.php
/httpdocs/video/flvs/flvs/video1.flv
/httpdocs/video/flvs/flvs/video2.flv

ODER
Du gibst anstelle einer relativen Pfadangabe eine Absolute an: "/httpdocs/video/flvs"
Bedenke aber, das die Datei aus ALLEN Dateien dieses Verzeichnisses gewählt wird - alle ausnahmen müssen in der Funktion bei den ausnahmen eingearbeitet werden. Da wäre es dann einfacher einen separaten Ordner für die Videos anzulegen face-wink


~Arano