MainRadiotalkCustom
Общие вопросы по интернет радио вещанию
6   •   Посмотреть все темы

Pal скрипт

 

123
Максим @MoD_X
Привет всем! :)
В общем есть скрипт:
var P : TPlayer;
var Song : TSongInfo;
var OldTime : DateTime;

OldTime := Now;

PAL.Loop := True;
PAL.WaitForTime('+00:30:00');

P := SoundFX;
if P <> nil then
If (OldTime>T['07:00:00']) AND (OldTime<=T['00:00:00']) Then
begin
Song := CAT['Station IDs (All)'].ChooseSong(smRandom,NoRules);
if Song <> nil then
begin
P.QueueSong(Song); //
P.Play;
end;
end;

И есть ещё один абсолютно идентичный, только каталоги поменял и параметр "OldTime", его выкладывать нету смысла, т.к. он работает нормально, а с этим какая-то беда.
В чём может быть ошибка, в данном скрипте?

6245
Тарас @tarasian666
If (OldTime>T['07:00:00']) AND (OldTime<=T['23:59:59']) Then

123
Максим @MoD_X
Спасибо!
:) ты наверно догадался, что во втором скрипте If (OldTime>T['00:00:00']) AND (OldTime<=T['07:00:00']) Then

Отредактировано MoD_X - 14.03.2012
6245
Тарас @tarasian666
нет я просто сталкивался с таким приколом, он не считает что 00.00.00 больше чем 07.00.00 и логически это правильно, будет понимать если указать еще дату +1 день

123
Максим @MoD_X
ещё вопрос, пока ты тут, как сделать на страничке songinfo.php в Samphp, отображение похожих треков по Жанру + исполнителю + названию?

6245
Тарас @tarasian666
делать поиск в базе в таблице songlist по даному жанру или исполнителю и тд

123
Максим @MoD_X
можешь показать пример, пожалуйста :)

6245
Тарас @tarasian666
если придерживаться функций samphpweb то примерно так

$db->open("SELECT * FROM songlist WHERE artist = '". $song["artist"]."' OR genre = '".$song["genre"]."' ");

while($song = $db->row()){
echo $song["artist"];
echo "тратата";
echo $song["title"];
}

123
Максим @MoD_X
ой, спасибо! :)
..почему у меня нет таких друзей...))

123
Максим @MoD_X
А как их лимитировать, но при этом, чтобы каждый раз рандомно выкидывалось, предположим, 7 треков.И как к ним ссылки прикурить?

6245
Тарас @tarasian666
добавить в конец sql запроса ORDER BY RAND() LIMIT 7

ссылки - надо смотреть как он в плейлисте формирует ее и из того исходить, беглым взглядом по скрипту playlist.php

<a href="javascript:songinfo(<? echo $song["songid"]; ?>)">

123
Максим @MoD_X
спасибо. ссылки прикрутил как-то :)) только один недочёт ********** посмотри, пожалуйста, из-за чего наверху названия треков дублироваться могут? Или лучше код дать?

Отредактировано MoD_X - 15.03.2012
6245
Тарас @tarasian666
лучше код

Отредактировано tarasian666 - 14.03.2012
123
Максим @MoD_X
:( нет, не помогло...

6245
Тарас @tarasian666
я не о том подумал так что оно и не должно было помочь, так что показывай код

123
Максим @MoD_X
вот верх:
function PutSongRow(&$song)
{
global $rc, $showpic, $darkrow, $lightrow, $showSiteRow, $showBuyRow;
PrepareSong($song);

$rc++;
$bgcolor = $darkrow;
if(($rc % 2)==0) $bgcolor = $lightrow;

?>
<tr bgcolor="<? echo $bgcolor; ?>">
<td align="left" colspan="5">
<font size="3" color="#003366"><small><a href="/song=<? echo $song["songid"]; ?>" title='Информация о треке <? echo $song["combine"]; ?> скачать бесплатно и без регистрации'><?
echo $song["combine"];
?></a></small></font></td>
<?
}//PutSongRow

/* ## ===================================================================== ## */
?>
<?
require("config.php");
$db->open("SELECT * FROM songlist WHERE ID = $songid AND (songtype='S' OR songtype='V' OR songtype='C') AND (status=0)");
$song = $db->row();
$db->open("SELECT * FROM songlist WHERE artist = '". $song["artist"]."' OR genre = '".$song["genre"]."'AND (songtype='S' OR songtype='V' OR songtype='C') AND (status=0) ORDER BY RAND() LIMIT 7 ");
PrepareSong($song);
?>

тут выводим:
<tr bgcolor="#002E5B">
<td align="right" colspan="5" align="center" height="20" background="images/wmenu.gif">
<p align="center"><font color="#FFFFFF" size="2"><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Тебе это понравится!</font></b></font>
</td>
</tr>
<?PHP
$rc=0;
while($song = $db->row()){
echo $song["artist"];
echo "-";
echo $song["title"];
PutSongRow($song);
}
?>

6245
Тарас @tarasian666

while($song = $db->row()){
PutSongRow($song);
}

123
Максим @MoD_X
ну вообще великолепно! :) спасибо тебе огромное! :)

123
Максим @MoD_X
Ещё вопрос :) tarasian666,как сделать на страничке playlist.php в samphp сортировку не по алфавиту а по стилю или по дате добавления?)

6245
Тарас @tarasian666
ORDER BY genre