konto usunięte
Janusz
Skudrzyk
Członek zarządu,
weblabs.pl
Temat: Przeładowanie odtwarzacza
WitamJeżeli odtwarzacz może być dowolny, to Flowplayer obsługuje mp3 oraz listy odtwarzania.
konto usunięte
Temat: Przeładowanie odtwarzacza
Ważne by możnabyło dodawać do playlisty za pomocą jquery (dokładniej do bazy danych) więc odpadają odtwarzacze z plikami xml ;)EDIT zapomniałem dodać, że każdy user ma własną playlistę :DŁukasz Kaczmarek edytował(a) ten post dnia 01.10.08 o godzinie 20:07
Janusz
Skudrzyk
Członek zarządu,
weblabs.pl
Temat: Przeładowanie odtwarzacza
z tego co widzę, to flowplayer bierze pliki bezpośrednio z kodu stronyco do php:
<?
function dodaj( $plik ) {
$user = $_SESSION['id_usera'] ; // o ile identyfikator usera zapisany jest w sesji
$plik = zrob_bezpieczny( $plik ) ;
mysql_query( "insert into playlista (user,plik) values ('$user', '$plik' ) ;
}
function playlista() {
$user = $_SESSION['id_usera'] ;
$result = mysql_query( "select plik from playlista where user = '$user'" ) ;
$wynik = '' ;
while( $row = mysql_fetch_assoc( $result )) {
$wynik .= '<a href="'.$row['plik'].'"><b>'.$row['plik].'</b></a>' ;
}
return $wynik ;
}
?>
wynik funkcji "playlista" należy wstawić pomiędzy <div class="items"></div>
I jeśli chodzi o samo dodawanie plików do playlisty w bazie, to "dodaj" należy ustawić jako funkcję wywoływaną poprzez AJAX (nie pamiętam jak to jest w jQuery, ale w sAjax eksportuje się funkcję - sajax_export( "dodaj" ) i wywołuje jako javascript:x_dodaj( plik ) ). Całość dodawania powinna wyglądać mniej więcej tak:
<script type="text/javascript">
function dodaj_plik( plik ) {
x_dodaj_plik( plik ) ;
// wstawienie "plik" do div.items
$("div.items").append( '<a href="'+plik+'">'+plik+'</a>' ) ;
// ustawienie playlisty
$("div.items").playlist(
// flash parameters
"../video/FlowPlayerDark.swf",
// flowplayer configuration
{initialScale:'scale'},
// playlist configuration
{loop:true}
);
}
</script>
Ten ostatni krok z przetwarzaniem playlisty chyba da się zrobić trochę inaczej (żeby nie odwoływało się do całej listy, tylko do ostatnio dodanego pliku).
konto usunięte
Temat: Przeładowanie odtwarzacza
Janusz Skudrzyk dziękuję bardzo, ale dodawanie plików już posiadam :D, potrzebuję jedynie odtwarzacz, najlepie własny (można skórkę dopasować) odtwarzacz mogę zrobić, ale nie wiem jak podpiąć do niego php i wyciągnąć następną piosenkę, potem na nią przeładować :P
Janusz
Skudrzyk
Członek zarządu,
weblabs.pl
Temat: Przeładowanie odtwarzacza
a zatem: An example of communication between JavaScript and Adobe Flash Playeri najłatwiej będzie dodać sobie w bazie położenie na playliście po to, żeby przy wywołaniu nastepny(), poprzedni() dało się określić bez zbędnej zabawy, który plik ma być wzięty pod uwagę; komunikacja natomiast poprzez AJAX, w jQuery dodali kilka metod, które powinny spełniać wszystkie wymaganiaJanusz Skudrzyk edytował(a) ten post dnia 01.10.08 o godzinie 21:20
konto usunięte
Temat: Przeładowanie odtwarzacza
Janusz Skudrzyk jeszcze raz dzięki :D ale javascript to moja bardzo słaba strona (dlatego korzystam z biblioteki J Query, którą nie dawno poznałem) Możesz mi pomóc w napisaniu skryptu w JS do przeładowania odtwarzacza?
Janusz
Skudrzyk
Członek zarządu,
weblabs.pl
Temat: Przeładowanie odtwarzacza
<script type="text/javascript">
function nastepna() {
$.ajax({
type: "GET",
dataType: "txt",
url: "playlista.php?kier=nastepna",
success: function(plik){
alert( 'odtwarzam ' + plik ) ;
// wrzucenie wartosci zmiennej plik do odtwarzacza
}
});
}
function poprzednia() {
$.ajax({
type: "GET",
dataType: "txt",
url: "playlista.php?kier=poprzednia",
success: function(plik){
alert( 'odtwarzam ' + plik ) ;
// wrzucenie wartosci zmiennej plik do odtwarzacza
}
});
}
</script>
wrzuć to do kodu strony, utwórz plik playlista.php, który będzie pobierać $_GET['kier'] i na jego podstawie określać jaki plik ma być odesłany do przeglądarki:
<?
// laczenie z baza, pobieranie nazwy pliku z playlisty
echo $plik ;
?>
w samym flashu dajesz dwa guziki, podpinasz się do nich poprzez (action script 2):
on( press ) {
getURL("javascript:nastepna()") ;
}
lub (action script 3):
function nastepna() {
getURL("javascript:nastepna()") ;
}
id_guzika.addEventListener( MouseEvent.CLICK, nastepna ) ;
(dla drugiego guzika to samo, tyle że z funkcją poprzednia)
jak to zadziała, to będziesz mógł podpiąć dane z javascripu do flasha tym sposobem, który jest podany w opisie od AdobeJanusz Skudrzyk edytował(a) ten post dnia 01.10.08 o godzinie 23:14
Następna dyskusja: