2014-02-08 92 views
0

我创建了一个添加“播放列表”的脚本。 在MySQL中是一样的东西:生成循环XML foreach PHP

Cod: 18, Playlist: teste, Looptande: 1, Starttime: 09:00 
Cod: 19, Playlist: teste2, Looptande: 0, Starttime: 10:00 

我试图生成以下格式的XML:

<playlist loopatend="1" shuffle="inherit">teste</playlist> 
<calendar starttime="09:00"> 

二:

<playlist loopatend="0" shuffle="inherit">teste2</playlist> 
<calendar starttime="10:00"> 

我在想,如果它检测到播放列表的数量并如上所述正确重复。

我试图做到这一点:

$qtd_ag = 0; 

$sql_ag = mysql_query("SELECT * FROM event where codigo_stm = '".$dados_stm["codigo"]."' ORDER by playlist"); 
while ($dados_ag = mysql_fetch_array($sql_ag)) { 

    $ag_config_autodj .= "playlistfilename_".$qtd_ag."=".$dados_ag["playlist"]."\n"; 
    $ag_config_autodj .= "playlistfilepath_".$qtd_ag."=/home/streaming/playlists/".$dados_stm["porta"]."-".$dados_ag["playlist"].".pls\n"; 
    $ag_config_calendar = array ("loopatend" => $dados_ag["loopatend"], "priority" => $dados_ag["priority"], "playlist" => $dados_ag["playlist"], "starttime" => $dados_ag["starttime"], "duration" => $dados_ag["duration"], "repeat" => $dados_ag["repeatc"], "startdate" => $dados_ag["startdate"], "enddate" => $dados_ag["enddate"], "shuffle" => $dados_ag["shuffle"]); 

    $qtd_ag++; 
} 

$config_calendar = gerar_calendar_autodj($dados_stm["porta"],$djs_config_calendar,$ag_config_calendar);     

$ssh->enviar_arquivo("../temp/".$config_autodj."","/home/streaming/configs/".$config_autodj."",0777); 
$ssh->enviar_arquivo("../temp/".$config_calendar."","/home/streaming/configs/".$config_calendar."",0777); 

unlink("../temp/".$config_autodj.""); 
unlink("../temp/".$config_calendar.""); 

功能二:(function.php) 我不能代码粘贴在这里,我总是摸索原谅我请,但我需要帮助。然后将打印:

print

因此它创建的XML,但出错与不对应于数据库值:

<playlist loopatend="0" shuffle="0" priority="0" >array</playlist> 
<calendar starttime="0" endtime="" repeat="128"> 
<playlist loopatend="0" shuffle="0" priority="0" >array</playlist> 
<calendar starttime="0" endtime="" repeat="128"> 
+0

我强烈建议不要手工生成XML。有关简单示例,请参阅http://stackoverflow.com/a/487282/421752。 – Im0rtality

回答

0

在图像您正在使用$$event[...]。我认为应该是$event[...]

+0

现在数据不正确,数字和字母不会对应mysql –