我試圖編寫一個PHP代碼/腳本,其中應執行兩個'while'函數。我不知道這是否是正確的方法,但我不知道其他任何東西。在一個腳本中執行兩個「while」函數
這裏的完整代碼:
<div class="events">
<div class="eventhead">Log</div>
<?
include_once 'dbcon.php';
$sql2 = "SELECT * FROM event_log ORDER BY id ASC LIMIT 10";
$rs2 = mysql_query($sql2);
while($row2 = mysql_fetch_array($rs2)) {
do {
$id = $row2['id'];
$date = $row2['date'];
$user = $row2['user'];
$action = $row2['action'];
$dept = $row2['dept'];
$desc = $row2['desc'];
if ($dept == "Client") {
$dsql = mysql_query("SELECT * AS title FROM clients WHERE cl_name LIKE '%$desc%'");
} else if ($dept == "Device") {
$dsql = mysql_query("SELECT * AS title FROM devices WHERE dev_id LIKE '%$desc%'");
};
$query = mysql_query($dsql) or die (mysql_error());
while($dq = mysql_fetch_array($query)) {
do {
$did = $dq['id'];
$title = $dq['title'];
?>
<p>• <?= $date ?> | User <?= $user ?> <?= $action ?> <?=$dept ?> - <?= $desc ?>.</p><br />
<p><?= $title ?></p>
<? } while($row2 = mysql_fetch_array($rs2)); ?>
<? } while($dq = mysql_fetch_array($query)); ?>
<? } ?>
<? } ?>
</div>
線
<p>• <?= $date ?> | User <?= $user ?> <?= $action ?> <?=$dept ?> - <?= $desc ?>.</p><br />
作品,如果我排除這部分代碼:
if ($dept == "Client") {
$dsql = mysql_query("SELECT * AS title FROM clients WHERE cl_name LIKE '%$desc%'");
} else if ($dept == "Device") {
$dsql = mysql_query("SELECT * AS title FROM devices WHERE dev_id LIKE '%$desc%'");
};
$query = mysql_query($dsql) or die (mysql_error());
while($dq = mysql_fetch_array($query)) {
do {
$did = $dq['id'];
$title = $dq['title'];
主要的原因我想包括部分是結果應該是一個超鏈接,它指的是在那裏顯示名字的客戶的ID!
讓我來解釋一下吧。如果這個腳本在沒有腳本錯誤部分的瀏覽器中執行,它會返回:
►2013-08-29 18:19:19 |用戶演示更改了客戶端 - Myclient。
其中數據庫ID爲myclient應檢索並創建超鏈接「client.php?id = ...」。
因此,問題出現在運行第二個函數時,我推測...但我怎麼能查詢另一個數據庫表來獲取ID和名稱,如果客戶端創建超鏈接?
預先感謝您!
您可以在查詢中使用'JOIN'語句或'UNION'。閱讀這兩個。 – DevlshOne