0

php で mysql データベースのクエリを実行していますが、ループを正常に実行して必要な情報を取得しました。ただし、出力の一部には、2 つのフィールドの timediff を出力するための追加のクエリが必要であり、それを適切にエコーすることができません。$billable は正しく機能しますが、追加の行をエコーし​​て時差をテーブルに追加することはできません

$billable = mysql_query("SELECT * FROM responses WHERE company ='XXXXXX' && date  BETWEEN '$start_date' AND '$end_date' && time_arrived >0 && TIMEDIFF(time_arrived, time_received)< 2500", $connection); 
$num_rows = mysql_num_rows($billable);

$time_diff = mysql_query("SELECT TIMEDIFF('time_received',time_arrived')FROM alarmresponses WHERE company ='XXXXXXX' && date BETWEEN '$start_date' AND '$end_date' && time_arrived >0 && TIMEDIFF(time_arrived, time_received)< 2500 AS value_sum
", $connection); 
$elapsed = mysql_num_rows($time_diff);

while ($bill = mysql_fetch_array($billable)){


echo"<p style='page-break-before: always'>
<table>

<tr><td><p style='text-align: right;'>SCHEDULE B</p></td></tr>
<tr><td><p style='text-align: right;'>Page 1 of 1</p></td></tr>
<tr><td><p style='text-align: center;'>XXXXXXX</p></td></tr>
<tr><td><p style='text-align: center;'>SERVICE RESPONSE REPORT</p></td></tr>

<tr><td>Property Owner's Name</td</td>".$bill['name']."</td><td>DATE</td><td>".$bill['date']."</td></tr>
<tr><td>Address</td><td>".$bill['address']."</td></tr>
<tr><td>Type of SERVICE</td><td>".$bill['type']."</td></tr>
<tr><td>Time Received:</td><td>".$bill['time_received']."</td><td>Time Arrived<td><td>".$bill['time_arrived']."Time Clear:</td><td>".$bill['time_cleared']."</td></tr>";

echo"<tr><td>Total Time Elapsed:"***.$elapsed['value_sum'].***"Minutes00:00</td></tr>";
4

1 に答える 1

0

クエリでそれを選択する必要があります。そうしないと、結果セットの一部になりません。

$billable = mysql_query("SELECT *, TIMEDIFF(time_arrived, time_received) AS time_elapsed FROM responses WHERE company ='XXXXXX' && date  BETWEEN '$start_date' AND '$end_date' && time_arrived >0 && TIMEDIFF(time_arrived, time_received)< 2500", $connection); 

echo $bill['time_elapsed']; // get the value and print it

参考までに、新しいコードに mysql_* 関数を使用しないでください。それらはもはや保守されておらず、コミュニティは非推奨プロセスを開始しています。赤いボックスが見えますか? 代わりに、準備済みステートメントについて学び、 PDOまたはMySQLiのいずれかを使用する必要があります。決められない場合は、この記事を参考にしてください。学習したい場合は、ここに良い PDO チュートリアルがあります。

于 2012-10-18T11:17:56.477 に答える