Witam,
Mam pewien problem z odtwarzaczem zippy a mianowicie stworzyłem moduł gdzie na stronie jest wyświetlane odtwarzacze po tym jak użytkownik da odpowiedni link.
Problem mam z playerem zippy.
Otóż moduł korzysta z 3 plików (z 4 w przyszłości)
1. - Główny plik php gdzie znajduje się główny kod na wyświetlanie i gdzie odtwarzacz jest jako obraz (małe zabezpieczenie)
2. - plik js dzięki czemu w/w obraz po kliknięciu zamienia się w odpowiedni odtwarzacz i przekierowuje na 3 plik
3. - plik php gdzie znajduje się pełny kod do wyświetlenia po kliknięciu w obrazek.
i teraz mam problem taki że z jakiegoś powodu kod na cięcie linku nie działa w tym 3 pliku a w 1 działa jak marzenie.
Poniżej dam wam część kodu znajdującego się w tych 3 plikach odpowiedzialnych za player zippy:
1 plik (główny)
/* Zippy player */
function build_zippy
( $matches=array() ) { $zurl = $matches[1];
$grot="http://".$gr[2]."/downloadMusic%3Fkey%3D".$gr[4]."ay";
if( $zurl == "" ) return;
return "[zs=" . $zurl . "]";
}
if ( count($get_size) == 2
) $decode_zurl = $width."x".$height.",".$zurl; else $decode_zurl = $zurl;
$zurl = $this->clear_url( $zurl );
$zmienna = $this->strToHex($zurl);
return "<!--dle_zs_begin:{$decode_zurl}--><div id=\"zippy_{$id}\" class=\"zippyplay\" onclick=\"pokaz_player('{$id}','{$zmienna}');return false;\"></div><div id=\"{$id}\"></div><!--dle_zs_end-->";
}
/* Koniec Zippy Player */
2 plik JS na wyświetlanie odtwarzacza po kliknięciu w obrazek
function pokaz_player(id,code)
{
ShowLoading('Trwa Ładowanie playera zippyshare ...');
$.post(dle_root + "engine/ajax/players/zippy.php", { zippy:code }, function(data){
HideLoading('');
$("#zippy_"+ id).remove();
$("#" + id).html(data);
});
}
3 plik wyświetlający player:
<?php
define('DATALIFEENGINE', true); @header("Content-type: text/html; charset=" . $config['charset']); if ($config['http_home_url'] == "") {
$config['http_home_url'] = "http://" . $_SERVER['HTTP_HOST'] . $config['http_home_url'];
}
function strToHex($string)
{
$hex='';
for ($i=0; $i < strlen($string); $i++) {
$hex .= dechex(ord
($string[$i])); }
return $hex;
}
function hexToStr($hex)
{
$string='';
for ($i=0; $i < strlen($hex)-1; $i+=2
) {
$string .= chr
(hexdec($hex[$i].$hex[$i+1
])); }
return $string;
}
$zippy = $_POST['zippy'];
function zippyshare($url){
$grot="http://".$gr[2]."/downloadMusic%3Fkey%3D".$gr[4]."ay";
$player = "<!--dle_zs_begin:{$zurl}--><embed type=\"application/x-shockwave-flash\" src=\"http://api.zippyshare.com/api/mediaplayer/mediaplayer.swf\" wmode=\"transparent\" style=\"\" id=\"mpl\" name=\"mpl\" quality=\"high\" allowfullscreen=\"false\" flashvars=\"height=20&width=300&file=$grot&volume=100&autostart=true&frontcolor=0xffffff&backcolor=0x000000&lightcolor=0xffffff&type=flv\" height=\"20\" width=\"300\"><!--dle_zs_end-->";
return $player;
}
?>
I problem polega na tym że w zmiennej
$grot nie wyświetlają się dane z zmiennej
$gr, Próbowałem to rozkminić ale nie wiem w czym polega błąd skoro taki sam kod działa w 1 pliku a w 3 już nie (IMG:
style_emoticons/default/sad.gif) Może ktoś z was znajdzie przyczynę tego
PS. Cały moduł działa pod php 7.0