相當複雜的問題:從表中的字段計數,然後更新到不同的表中的不同字段
此刻我有一張名爲「時間表」的表。當有人預訂一個插槽(這是一個無線電預訂系統)時,這個更新。我想要的是一個PHP文件,我可以每15分鐘運行一次cron作業。在PHP腳本中,我想要做的是統計無線電演示者通過「時間表」表中的「用戶名」字段預訂了多少個插槽。然後,我希望它在名爲「slot_count」的字段中的另一個名爲「users」的表中更新一個字段,其中的「用戶名」下的「時間表」表中找到的時隙數量。
目前我有一個腳本,拉所有的預訂廣告與他們的演講「用戶名」的成表:
<?php
include("../config.php");
include("functions.php");
if($logged["level"] == "HDJ" OR $logged["level"] == "SA") {
echo "<table width=\"580px\" class=\"board\" border=\>";
$order = "SELECT * FROM timetable WHERE username <> 'No DJ'";
$result = mysql_query($order);
// Error checking
if (!$result) {
// output error, take other action
}
else {
while ($row=mysql_fetch_array($result)){
// Append all results onto an array
$rowset[] = $row;
}
}
foreach ($rowset as $row) {
echo "<tr><td>" . htmlspecialchars($row['username']) . "</td></tr>";
}
} else {
echo ("<div class=\"caution\">Access is denied.</div>");
}
?>
任何想法?
UPDATE users
SET slot_count = (SELECT COUNT(*) FROM timetable WHERE timetable.username = users.username)
假設:
您是否能夠給我這個在PHP代碼等 – Logan 2012-04-11 15:50:04
@Logan對不起,我不是一個PHP的傢伙 。我在我的答案中添加了一個鏈接,指出如何直接針對MySQL執行SQL,而不需要任何PHP。更適合於工作恕我直言。 –
2012-04-11 15:56:00
你知道如何在cPanel中設置這個查詢嗎?我在Cron頁面,它要求執行的命令 – Logan 2012-04-11 16:01:30