Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd JS, php czy xhtml?
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
primo
Witam,

od dwóch dni męczę się z zagadnieniem wyświetlenia filmu na stronie. Działa to jak zwykły plik swf osadzony w stronie, ale w czym problem...

Mianowicie gdy wpiszę w przeglądarce bezpośredni adres strony, która ma zostać załączona to działa, jednak gdy owa strona ma zostać załączona poprzez zwykłą instrukcję switch to za diabła nie chce zadziałać. Próbowałem już w tym skrypcie zmienić wszystko włącznie z linkami, odnośnikami, a jedyne co udało mi się osiągnąć to to, że wyświetli film, ale znowu wtedy nie ma przycisków sterujących. Dlatego też myślę, że problem tkwi w JS, ale niczego już nie jestem pewien.

pozdrawiam i dziękuję za zainteresowanie
wookieb
Podaj przykład jak załączasz strone i najlepiej link do strony z przykładem załączenia.
primo
Cytat(wookieb @ 24.08.2008, 10:51:20 ) *
Podaj przykład jak załączasz strone i najlepiej link do strony z przykładem załączenia.


Plik sterowanie:
  1. <?php
  2. switch ($_GET['op'])
  3. {
  4. case 2:
  5.  include('dodatkowe/o_firmie.html');
  6. break;
  7. case 3:
  8.  include('dodatkowe/galeria.html');
  9. break;
  10. case 4:
  11.  include('dodatkowe/cennik.html');
  12. break;
  13. case 5:
  14.  include('dodatkowe/kontakt.html');
  15. break;
  16. case 6:
  17.  include('filmy/ewelina_pawel_czolowka.html');
  18. break;
  19.  
  20. case 1:
  21. default:
  22. include('news.html');
  23. }
  24. ?>


Adres strony: http://wideofilmowanie.divideo.com.pl/ kliknij w Galeria i link, który się wyświetli. Ten ostatni to wg sterowania case 6. A cały kod jest w źródle strony.
wookieb
Sciezka do filmu
http://wideofilmowanie.divideo.com.pl/filmy/[plik].swf
A ze strony
http://wideofilmowanie.divideo.com.pl/ probujesz otworzyc plik
http://wideofilmowanie.divideo.com.pl/[plik].swf

Popraw sciężkę do swfa.
primo
Mówisz o tej części kodu?? :
  1. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="480" height="270" id="ewelina_pawel_czolowka" align="middle">
  2. <param name="allowScriptAccess" value="sameDomain" />
  3. <param name="allowFullScreen" value="false" />
  4. <param name="movie" value="ewelina_pawel_czolowka.swf" /><param name="play" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /> <embed src="ewelina_pawel_czolowka.swf" play="false" quality="best" bgcolor="#ffffff" width="480" height="270" name="ewelina_pawel_czolowka" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  5. </object>


Tu należy dać np: filmy/ewlina_pawel_czolowka.swf questionmark.gif Próbowałem to na sto różnych sposobów, ale to nie to. Bo jak sobie kliknę bezpośredni link do tej strony to działa, a po podpięciu już nie. Tego nie mogę zrozumieć.
wookieb
Kod
<noscript>
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="480" height="270" id="ewelina_pawel_czolowka" align="middle">
    <param name="allowScriptAccess" value="sameDomain" />
    <param name="allowFullScreen" value="false" />
    <param name="movie" value="filmy/ewelina_pawel_czolowka.swf" /><param name="play" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" />    <embed src="filmy/ewelina_pawel_czolowka.swf" play="false" quality="best" bgcolor="#ffffff" width="480" height="270" name="ewelina_pawel_czolowka" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
</noscript>


Ależ działa. I to doskonale.
primo
W trzech przeglądarkach sprawdzam i u mnie nie działa.

Ten link działa: http://wideofilmowanie.divideo.com.pl/film...l_czolowka.html
Ten już nie: http://wideofilmowanie.divideo.com.pl/index.php?op=6

a jadą na tym samym kodzie.
wookieb
Pokaż co wstawiłeś to po1.
Wyczyść cache to po 2
No to ja nie wiem co ty robisz skoro mi działa, mojemu koeldze tez i 3 koledze z firmy też przy edycji w firebugu to po 3.
primo
Co ciekawe!!

Wyłączyłem obsługę JS w Firefoxie i na powyższym kodzie ruszyło - jednak bez menu sterującego. Gdy spojrzy się do kodu strony to można zauważyć dwa kody: script i noscript. Zmiany zostały wprowadzone w tym drugim, jednak on nie jest wczytywany, bo każdy ma włączoną obsługę JS. Wniosek taki, że zmiany należy wprowadzić w pierwszej części kodu. Tylko gdzie??
luck
A tak?
  1. if (AC_FL_RunContent == 0) {
  2. alert("This page requires AC_RunActiveContent.js.");
  3. } else {
  4. AC_FL_RunContent(
  5. 'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
  6. 'width', '480',
  7. 'height', '270',
  8. 'src', 'filmy/ewelina_pawel_czolowka',
  9. 'quality', 'best',
  10. 'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
  11. 'align', 'middle',
  12. 'play', 'false',
  13. 'loop', 'true',
  14. 'scale', 'showall',
  15. 'wmode', 'window',
  16. 'devicefont', 'false',
  17. 'id', 'ewelina_pawel_czolowka',
  18. 'bgcolor', '#ffffff',
  19. 'name', 'ewelina_pawel_czolowka',
  20. 'menu', 'true',
  21. 'allowFullScreen', 'false',
  22. 'allowScriptAccess','sameDomain',
  23. 'movie', 'ewelina_pawel_czolowka',
  24. 'salign', ''
  25. ); //end AC code
  26. }

Zwróć uwagę na 'src', 'filmy/ewelina_pawel_czolowka',.
primo
Cytat(wookieb @ 24.08.2008, 12:15:30 ) *
Pokaż co wstawiłeś to po1.
Wyczyść cache to po 2
No to ja nie wiem co ty robisz skoro mi działa, mojemu koeldze tez i 3 koledze z firmy też przy edycji w firebugu to po 3.

Obecnie kod wygląda następująco:

  1. <script language="javascript">
  2. if (AC_FL_RunContent == 0) {
  3. alert("This page requires AC_RunActiveContent.js.");
  4. } else {
  5. AC_FL_RunContent(
  6. 'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
  7. 'width', '480',
  8. 'height', '270',
  9. 'src', 'ewelina_pawel_czolowka',
  10. 'quality', 'best',
  11. 'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
  12. 'align', 'middle',
  13. 'play', 'false',
  14. 'loop', 'true',
  15. 'scale', 'showall',
  16. 'wmode', 'window',
  17. 'devicefont', 'false',
  18. 'id', 'ewelina_pawel_czolowka',
  19. 'bgcolor', '#ffffff',
  20. 'name', 'ewelina_pawel_czolowka',
  21. 'menu', 'true',
  22. 'allowFullScreen', 'false',
  23. 'allowScriptAccess','sameDomain',
  24. 'movie', 'ewelina_pawel_czolowka',
  25. 'salign', ''
  26. ); //end AC code
  27. }
  28. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="480" height="270" id="ewelina_pawel_czolowka" align="middle">
  29. <param name="allowScriptAccess" value="sameDomain" />
  30. <param name="allowFullScreen" value="false" />
  31. <param name="movie" value="filmy/ewelina_pawel_czolowka.swf" /><param name="play" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /> <embed src="filmy/ewelina_pawel_czolowka.swf" play="false" quality="best" bgcolor="#ffffff" width="480" height="270" name="ewelina_pawel_czolowka" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  32. </object>
wookieb
preferowałbym wywalenie tego co masz i danie tego
Kod
<script type="text/javascript" src="swfobject.js"></script>

<div id="flashcontent" style="width: 480px; height: 270px;">

</div>

<script type="text/javascript">
   var so = new SWFObject("filmy/ewelina_pawel_czolowka.swf", "mymovie", "480", "270", "8", "#ffffff");
   so.write("flashcontent");
</script>

Oczywiscie sciaginj swfobject.js


albo popraw linijke
Kod
'src', 'filmy/ewelina_pawel_czolowka',

i jeszcze
Kod
'movie', 'filmy/ewelina_pawel_czolowka',

Upierdałbyum sie przy 1 metodzie.

//kolega na dole szybszy\

Edit: Chciałbym jeszcze dać parę słów wyjaśnienie na temat swfobject. Element o id "flashcontent" bedzie przechowywał zawartość dotyczaca wyswietlenia swf. Dlatego jeżeli polozenie elementu bedzie niedobre to zmien ustawienia diva a nei skryptu. Z ewentualnymi problemami przy ustawianiu dodatkowychj parametrow dla fimu uzyj tez swfobject przed so.write().
Parametry dodajesz przez so.addParam('nazwa_parametru', wartosc);
primo
Cytat(luck @ 24.08.2008, 12:20:13 ) *
A tak?
  1. if (AC_FL_RunContent == 0) {
  2. alert("This page requires AC_RunActiveContent.js.");
  3. } else {
  4. AC_FL_RunContent(
  5. 'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
  6. 'width', '480',
  7. 'height', '270',
  8. 'src', 'filmy/ewelina_pawel_czolowka',
  9. 'quality', 'best',
  10. 'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
  11. 'align', 'middle',
  12. 'play', 'false',
  13. 'loop', 'true',
  14. 'scale', 'showall',
  15. 'wmode', 'window',
  16. 'devicefont', 'false',
  17. 'id', 'ewelina_pawel_czolowka',
  18. 'bgcolor', '#ffffff',
  19. 'name', 'ewelina_pawel_czolowka',
  20. 'menu', 'true',
  21. 'allowFullScreen', 'false',
  22. 'allowScriptAccess','sameDomain',
  23. 'movie', 'ewelina_pawel_czolowka',
  24. 'salign', ''
  25. ); //end AC code
  26. }

Zwróć uwagę na 'src', 'filmy/ewelina_pawel_czolowka',.

To już próbowałem wcześniej, ale też bez powodzenia.
luck
Teraz zauważyłem, że jest jeszcze 'movie', 'ewelina_pawel_czolowka',. Co jeśli i tutaj zmienisz ścieżkę na 'filmy/ewelina_pawel_czolowka'?
primo
Cytat(luck @ 24.08.2008, 12:27:26 ) *
Teraz zauważyłem, że jest jeszcze 'movie', 'ewelina_pawel_czolowka',. Co jeśli i tutaj zmienisz ścieżkę na 'filmy/ewelina_pawel_czolowka'?

To samo.

Próbuję metodę podaną przez wookieb. Zaraz zobaczymy.
luck
Ewentualnie spróbuj podawać pełną, bezwzględną ścieżkę do pliku swf, oczywiście bez rozszerzenia.
primo
Zastosowałem metodę wookieb i mamy połowiczny sukces. Film zaczyna lecieć, jednak nadal brak przycisków sterowania, które po kliknięciu w plik ewelina_pawel_czolowka.swf na dysku lokalnym się wyświetlają.

Cytat(luck @ 24.08.2008, 12:36:21 ) *
Ewentualnie spróbuj podawać pełną, bezwzględną ścieżkę do pliku swf, oczywiście bez rozszerzenia.

Działa podobnie jak i metoda wookieb, jednak nadal bez przycisków sterujących.

Kolejne godzinki prób spełzły na niczym. Wreszcie złapałem się ostatniej możliwości. Mianowicie wszystkie pliki umiesciłem nie w podkatalogu /filmy a na samej górze stosu - na wysokości index.php i zadziałało, ale dlaczego tak to nie mam bladego pojęcia. Może ktoś coś z tego czai??
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.