FAQSuchenBenutzergruppenProfilRegistrierenPrivate MessagesPHPKid-Forum von Joh.-Chr. Hanke: Foren-ÜbersichtLogin
PHPKid-Forum von Joh.-Chr. Hanke: Foren-Übersicht » Entwicklung Gehe zu Seite 1, 2  Weiter
Video platzhalter
Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen
Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 31.07.2007, 12:19     Titel: Video platzhalter
  Antworten mit Zitat      
Ich möchte gerne flv in das CM einbinden und zwar so.

flv video.flv flv

Danach soll der Contentmaker die Platzerhalter umwandeln.
Irgendwie klappt das aber nicht. Wo liegt der Fehler?

Code:

// Flasch Video-Platzhalter finden und durch Video Player ersetzen
preg_match_all("|flv(.*?)flv|", $acticon, $flv);
 
foreach ($flv[0] as $wert) {

    $string= " Hier erscheint der Flash Player ";
   
    $muster = "|flv{($flvembed )}flv|";   
    $acticon = preg_replace($muster, $string, $acticon);
}



Mfg Maffy
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

Faba


Beiträge: 401
Anmeldungsdatum: 12.08.2006
Beitrag Verfasst am: 31.07.2007, 14:11     Titel:
  Antworten mit Zitat      
Ich bin mir da nicht so sicher. Ich habe auch immer so meine Probleme mit RegExp. Aber was steht denn in der Variable $flvembed? Da muss glaube ich noch einmal (.*?) stehen!
_________________
Was ist der Unterschied zwischen einem Physiker und einem Programmierer?

Der Physiker glaubt, 1KByte wären 1000 Bytes.

Ein Programmierer glaubt, 1km wären 1024m...
Private Nachricht senden Benutzer-Profile anzeigen Website dieses Benutzers besuchen

Marcel


Beiträge: 55
Anmeldungsdatum: 24.07.2007
Wohnort: Eisenberg
Beitrag Verfasst am: 31.07.2007, 14:36     Titel:
  Antworten mit Zitat      
ich denke das ist wegen .flv!
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger ICQ-Nummer

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 31.07.2007, 15:07     Titel:
  Antworten mit Zitat      
Hallo,
Ich habe da ein Flasch Player gefunden den ich dann entsprechend in das CMS einbinden will.

http://www.jeroenwijering.com/?item=JW_FLV_Player

http://www.jeroenwijering.com/extras/readme.html#basic
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

markusgutbrod


Beiträge: 174
Anmeldungsdatum: 23.01.2006
Wohnort: Dornstadt
Beitrag Verfasst am: 01.08.2007, 05:58     Titel:
  Antworten mit Zitat      
Ich denke Faba hat recht:

Ersetze einfach mal
Code:
$muster = "|flv{($flvembed )}flv|";

durch
Code:
$muster = "|flv".$wert."flv|";

_________________
Veni, Vidi, Scribsi
Ich kam, sah und schrieb ein Programm ...
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden ICQ-Nummer

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 08:45     Titel:
  Antworten mit Zitat      
Ich habe es jetzt soweit hinbekommen das er die Platzhalter findet und den Code anzeigt.

Jetzt ist nur noch das Problem das Java Script so einzubinden, dass er den Flashplayer anzeigt und das Video abspielt.

Code:

   preg_match_all("|flv(.*?)flv|", $acticon, $flv);

   $video_dir   = "module/video/jw_flv_player/";

   foreach($flv[1] as $flvname) {
    
   if (!empty($flvname[0])) {
   
      $flvstring = <<<EOT
<p><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
<script>
   var s1 = new SWFObject("module/video/jw_flv_player/flvplayer.swf","single","300","170","7");
   s1.addParam("allowfullscreen","true");
   s1.addVariable("file","module/video/jw_flv_player/".$flvname[0].".flv");
   s1.addVariable("image","module/video/jw_flv_player/preview.jpg");
   s1.write("player1");
</script>
EOT;
      
     } else {
   
       $flvstring = "  ";
     }

   $muster = "|flv(.*?)flv|";
   $acticon = preg_replace($muster, $flvstring, $acticon);
      
   }

_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

markusgutbrod


Beiträge: 174
Anmeldungsdatum: 23.01.2006
Wohnort: Dornstadt
Beitrag Verfasst am: 01.08.2007, 08:48     Titel:
  Antworten mit Zitat      
Muss
Code:
<script>

nicht durch
Code:
<script type="text/javascript" language="javascript">

ersetzt werden?
_________________
Veni, Vidi, Scribsi
Ich kam, sah und schrieb ein Programm ...
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden ICQ-Nummer

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 12:00     Titel:
  Antworten mit Zitat      
Wenn ich jetzt den Blatzhalter mehrmals auf der gleichen Seite in den Contend einbinde also so

flv video1 flv
flv video2 flv

Dann spielt bzw. zeigt er nur das erste Video im Flash Player.
Das zweite erscheint nicht.

Hier kommt eine Meldung Get the Flash Player to see this player.

Hm, wo liegt da noch der Fehler?

Code:

   preg_match_all("|flv(.*?)flv|", $acticon, $flv);

// pfad zum Plugin Ordner   
$dir   = "module/video/jw_flv_player/";

   foreach($flv[1] as $flvname) {
                    
   // Datei zusammensetzten
   $text = trim(''.$flvname.''); // Leerzeichen weg
            
   $file =''.$text.'.flv'; Flash File
   $image =''.$text.'.jpg'; Vorschau Bild
      
   $output =  '            
   <p>Datei: '.$file.' </p>
   <p><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
   <script>
   var s1 = new SWFObject("'.$dir.'flvplayer.swf","single","300","170","5");
   s1.addParam("allowfullscreen","true");
   s1.addVariable("file","'.$file.'");
   s1.addVariable("image","'.$dir.''.$image.'");
   s1.write("player1");
   </script>';

   $muster = "|flv($flvname)flv|";
   $acticon = preg_replace($muster, $output, $acticon);

   }


Mfg Maffy
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 12:15     Titel:
  Antworten mit Zitat      
Hier habe ich mal eine Demo Seite: eingerichtet damit man das Problem besser sieht.


Mfg Maffy
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

Marcel


Beiträge: 55
Anmeldungsdatum: 24.07.2007
Wohnort: Eisenberg
Beitrag Verfasst am: 01.08.2007, 13:29     Titel:
  Antworten mit Zitat      
markusgutbrod hat Folgendes geschrieben:
Muss
Code:
<script>

nicht durch
Code:
<script>

ersetzt werden?

Das ist egal der erkennt beides als JS
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger ICQ-Nummer

Faba


Beiträge: 401
Anmeldungsdatum: 12.08.2006
Beitrag Verfasst am: 01.08.2007, 13:59     Titel:
  Antworten mit Zitat      
Es funktioniert doch, wo liegt das Problem?
_________________
Was ist der Unterschied zwischen einem Physiker und einem Programmierer?

Der Physiker glaubt, 1KByte wären 1000 Bytes.

Ein Programmierer glaubt, 1km wären 1024m...
Private Nachricht senden Benutzer-Profile anzeigen Website dieses Benutzers besuchen

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 14:06     Titel:
  Antworten mit Zitat      
Werden bei dir alle zwei Videos angezeigt?
Welchen Browser verwendest du?

Mfg Maffy
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

markusgutbrod


Beiträge: 174
Anmeldungsdatum: 23.01.2006
Wohnort: Dornstadt
Beitrag Verfasst am: 01.08.2007, 14:32     Titel:
  Antworten mit Zitat      
Problem:
Dein Problem ist, dass du nur eine einzige Variable für das Objekt verwendest. Damit wird beim zweiten Aufruf von Javascript die Variable überschrieben und es wird in beiden Anzeigen jeweils dasselbe Video gezeigt.

Lösung:
Füge der Foreach-Schleife eine weitere Variable (z.B. $a) hinzu, sodass das ganze so aussieht:
Code:
foreach($flv[1] as $a=>$flvname) {

Nun ersetzt du in allen Javascript-Aufrufen bei s1 die eins durch $a, ebenso bei player1:
Code:
$output =  '           
   <p>Datei: '.$file.' </p>
   <p><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
   <script>
   var s1 = new SWFObject("'.$dir.'flvplayer.swf","single","300","170","5");
   s'.$a.'.addParam("allowfullscreen","true");
   s'.$a.'.addVariable("file","'.$file.'");
   s'.$a.'.addVariable("image","'.$dir.''.$image.'");
   s'.$a.'.write("player'.$a.'");
   </script>';


So, das müsste es gewesen sein.
_________________
Veni, Vidi, Scribsi
Ich kam, sah und schrieb ein Programm ...
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden ICQ-Nummer

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 15:18     Titel:
  Antworten mit Zitat      
markusgutbrod hat Folgendes geschrieben:
Problem:
Dein Problem ist, dass du nur eine einzige Variable für das Objekt verwendest. Damit wird beim zweiten Aufruf von Javascript die Variable überschrieben und es wird in beiden Anzeigen jeweils dasselbe Video gezeigt.

....


Danke für deine Hilfe, habe das Problem inzwischen selber lösen können.
Es lag am ID=Player1 und s1.write("'.$flv_player.'"); dies muss für jedes Video erhöt werden. dann klapt es.

Code:

   // Flasch Video-Platzhalter finden und durch Video Player ersetzen
   // (C) 2007 by matthias-reichert@mr-73.de

   preg_match_all("|flv(.*?)flv|", $acticon, $flv);
   
   $dir   = "module/video/jw_flv_player/";
   
   $flv_counter = 0;
   
   foreach($flv[1] as $flvname) {
                                  
   // Datei zusammensetzten
   $text = trim(''.$flvname.'');
   
   // Video            
   $file =''.$text.'.flv';
   
   // Bild
   $image =''.$text.'.jpg';
   
   // Flash player ID nummerieren
   $flv_counter++;
   $flv_player = "player".$flv_counter."";
      
   $output =  '            
   <p>Datei: '.$file.' '.$flv_counter.' </p>
   <p><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
   <script>
   var s1 = new SWFObject("'.$dir.'flvplayer.swf","single","300","170","5");
   s1.addParam("allowfullscreen","true");
   s1.addVariable("file","'.$file.'");
   s1.addVariable("image","'.$dir.''.$image.'");
   s1.write("'.$flv_player.'");
   </script>';

   $muster = "|flv($flvname)flv|";
   $acticon = preg_replace($muster, $output, $acticon);

   }



[url=http://www.der-rhoen-fuehrer.info/portal/internet/index.php?demo
]Demo Page[/url]
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

Maffy


Beiträge: 138
Anmeldungsdatum: 15.02.2006
Wohnort: Bad Bocklet
Beitrag Verfasst am: 01.08.2007, 15:21     Titel:
  Antworten mit Zitat      
[quote="Maffy"]
markusgutbrod hat Folgendes geschrieben:
Problem:
Dein Problem ist, dass du nur eine einzige Variable für das Objekt verwendest. Damit wird beim zweiten Aufruf von Javascript die Variable überschrieben und es wird in beiden Anzeigen jeweils dasselbe Video gezeigt.

....


Danke für deine Hilfe, habe das Problem inzwischen selber lösen können.
Es lag am ID=Player1 und s1.write("'.$flv_player.'"); dies muss für jedes Video erhöt werden. dann klapt es.

Code:

   // Flasch Video-Platzhalter finden und durch Video Player ersetzen
   // (C) 2007 by matthias-reichert@mr-73.de

   preg_match_all("|flv(.*?)flv|", $acticon, $flv);
   
   $dir   = "module/video/jw_flv_player/";
   
   $flv_counter = 0;
   
   foreach($flv[1] as $flvname) {
                                  
   // Datei zusammensetzten
   $text = trim(''.$flvname.'');
   
   // Video            
   $file =''.$text.'.flv';
   
   // Bild
   $image =''.$text.'.jpg';
   
   // Flash player ID nummerieren
   $flv_counter++;
   $flv_player = "player".$flv_counter."";
      
   $output =  '            
   <p>Datei: '.$file.' '.$flv_counter.' </p>
   <p><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
   <script>
   var s1 = new SWFObject("'.$dir.'flvplayer.swf","single","300","170","5");
   s1.addParam("allowfullscreen","true");
   s1.addVariable("file","'.$file.'");
   s1.addVariable("image","'.$dir.''.$image.'");
   s1.write("'.$flv_player.'");
   </script>';

   $muster = "|flv($flvname)flv|";
   $acticon = preg_replace($muster, $output, $acticon);

   }



Demo Page
_________________
leben und leben lassen
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden Website dieses Benutzers besuchen

Options and Permissions


Beiträge der letzten Zeit anzeigen:

Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
.
Seite 1 von 2 .:. Gehe zu Seite 1, 2  Weiter Neues Thema eröffnen Neue Antwort erstellen

Website Templates
LayoutBank Webpage Templates © - Forumsbetreiber und Impressumslink: siehe www.phpkid.de