xml ファイルから取得したデータを返してから、ビュー ページに返そうとしています。
ユーザーが開始する特定のアクション中にxmlファイルが更新され、ポップアップしてxmlファイルの内容を表示するダイアログボックスが表示されます。このアクション中に xml ファイルが更新されます。
私の見解では、xml ファイルを読み取る php アクションから返されたデータを表示したいと考えています。
更新されたxmlファイルを取得するための私のアクションは次のとおりです。これはビューを更新するために毎秒呼び出されます。
public function getUpdate()
{
$myFile = '/srv/www/xml-status/update_status.xml';
$file = fopen($myFile, 'r');
$data = file_get_contents($myFile);
//debug($data);
//print_r($data);
//echo json_encode($data);
//echo $data;
return json_encode($data);
}
xml ファイルの内容が取得され、$data
変数に格納されますが、500 内部サーバー エラーが発生し続けます。いろいろ試してみましたが、データを正しく返す方法がわかりません。
これが情報を表示するための私のビューコードです。
<script>
window.onload = timedRefresh(1000);
// Get the updated xml file every second
function timedRefresh(timeoutPeriod)
{
// Do a get request to get the updated contents of the xml file
$.get('/tools/getUpdate', function(data)
{
alert(data);
});
window.setTimeout('timeRefreshed(1000)', 1000);
}
</script>
<?php
if(false != $xml = simplexml_load_file($xmlFile))
{
foreach ($xml->LogEvent->sequence as $temp)
{
echo 'Step: ', $temp['step'], ' ', 'Step Name: ', $temp['stepName'], ' ', 'd1: ', $temp['d1'], ' ',
'd2: ', $temp['d2'], ' ', 'd3: ', $temp['d3'], ' ', 'Status: ', $temp['status'],'<br>';
}
}
else
{
echo '<br>Error: Update status can\'t be displayed<br>';
}
?>
何が間違っているのかわかりません。get リクエストに返されるデータ変数を取得できれば、情報を解析して表示できますが、php から javascript の get リクエストにデータを取得するのに問題があります。どんな助けでも素晴らしいでしょう。
ありがとう