Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Функция вставляет плеер Uppod и генерирует плей лист PHP
Форумы портала PHP.SU » PHP » Пользовательские функции » Функция вставляет плеер Uppod и генерирует плей лист PHP

Страниц (1): [1]
 

1. BlazeSilver - 19 Июня, 2011 - 18:55:53 - перейти к сообщению
Функция, можно сказать сырая , но работает. Оставляйте свои замечания.

id состоит из
xx - жанр
xxxx - 'страница'
xx - число пунктов на странице

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. function audio($id){
  4.         if (gettype($id) != gettype(0) || strlen($id) != 8){
  5.                 $id= "10000107";
  6.                 $genre = 10;
  7.                 $page = 1;
  8.                 $item = 7;
  9.                 $start = 1;
  10.                 echo("Корректировка общая<br/>");
  11.         }
  12.         else{
  13.                 $genre = substr ($id, 0, 2);
  14.                 $page = substr ($id, 2, 4);
  15.                 $item = substr ($id, 6, 2);
  16. // ограничение, можно скорректировать
  17.                 if ($genre >= 10 && $genre <= 30){
  18.                         $genre = $genre;
  19.                 }
  20.                 else{
  21.                         $genre = 10;
  22.                         echo("Корректировка жанра<br/>");
  23.                 }
  24. // ограничение, можно скорректировать
  25.                 if ($page >= 1 && $page <= 50){
  26.                         $page = $page;
  27.                 }
  28.                 else{
  29.                         $page = 1;
  30.                         echo("Корректировка страницы<br/>");
  31.                 }
  32. // ограничение, максимальное кол-во пунктов в плеере
  33.  
  34.                 if ($item >= 7 && $item <= 50){
  35.                         $item = $item;
  36.                 }
  37.                 else{
  38.                         $item = 7;
  39.                         echo("Корректировка пункта<br/>");
  40.                 }
  41.                 $start = (($page - 1) * $item);
  42.                 $id = $genre.str_pad($page,4,"0", STR_PAD_LEFT).str_pad($item,2,"0",STR_PAD_LEFT);
  43.         }
  44.                        
  45.         $playlist = "cache/aplaylist-".$id.".txt";
  46.        
  47.         if (file_exists($playlist)){
  48.                 $ctime = time();
  49.                 $ftime = filemtime($playlist);
  50.                 $delta = $ctime - $ftime;
  51.                 if ($delta > 18000){
  52.                         echo "Необходимо обновить кэш<br/>";
  53.                         mysql_connect(host, login, password) or die ("MySQL error! Can't connect.");
  54.                         mysql_select_db(base) or die ("MySQL error! Database not found.");
  55.                         $select = mysql_query("SELECT * FROM audio WHERE genre = $genre  ORDER BY id DESC LIMIT $start, $item");
  56.                         if (mysql_num_rows($select)!=0){
  57.                                 while ($result = mysql_fetch_array($select)){
  58.                                         $i = $i + 1;
  59.                                         $array[] = "{\"comment\":\"".$i.".".substr ($result[title], 0, 30)."\",\"file\":\"".$result[path]."\"}";
  60.                                 }
  61.                                 $text = "{\"playlist\":[".implode(",",$array)."]}";
  62.                                 $file = "cache/aplaylist-".$id.".txt";
  63.                                 $open = fopen($file, 'w');
  64.                                 fopen($file, 'w');
  65.                                 fwrite($open, $text);                  
  66.                         }
  67.                         else {
  68.                                 echo('Пустой ответ');
  69.                         }
  70.                 }
  71.                 else {
  72.                                         $file = $playlist;
  73.                 }
  74.         }
  75.         else {
  76.                 echo "Создается новый плейлист<br>";
  77.                
  78.                 mysql_connect(host, login, password) or die ("MySQL error! Can't connect.");
  79.                 mysql_select_db(base) or die ("MySQL error! Database not found.");
  80.                 $select = mysql_query("SELECT * FROM audio WHERE genre = $genre  ORDER BY id DESC LIMIT $start, $item");
  81.                 if ( mysql_num_rows($select)!=0){
  82.                         while ($result = mysql_fetch_array($select)){
  83.                                 $i = $i + 1;
  84.                                 $array[] = "{\"comment\":\"".$i.".".substr ($result[title], 0, 30)."\",\"file\":\"".$result[path]."\"}";
  85.                         }
  86.                         $text = "{\"playlist\":[".implode(",",$array)."]}";
  87.                         $file = "cache/aplaylist-".$id.".txt";
  88.                         $open = fopen($file, 'w');
  89.                         fopen($file, 'w');
  90.                         fwrite($open, $text);                  
  91.                 }
  92.                 else {
  93.                         echo('Пустой ответ');
  94.                 }
  95.         }
  96.         echo ("<div id='audio'></div>
  97.         <script type='text/javascript'>
  98.         var flashvars = {'st':'".astyle."','pl':'".$file."'};
  99.         var params = {bgcolor:'#ffffff',allowScriptAccess:'always',id:'audio'};
  100.         new swfobject.embedSWF('".aplayer."','audio','240','192','9.0.115.0',false,flashvars,params);
  101.         </script>       ");
  102. }
  103.  
  104.  


Вызов функции


 

Powered by ExBB FM 1.0 RC1