0
我正在構建一個簡單的留言板,需要從3個不同的表中獲取信息以顯示主要摘要頁面。我正在使用mysqli_stmt協議,並且無法弄清楚如何獲得每個討論的第一個消息和作者姓名,因爲所有sql查詢都需要在另一個準備好之前關閉。mysqli_stmt從3個表中獲取有限的數據
這裏是我跑的創建數據庫代碼的簡化版本:
CREATE TABLE `users` (
`id` INT(25) UNSIGNED AUTO_INCREMENT PRIMARY KEY ,
`name` VARCHAR(65) NOT NULL
);
CREATE TABLE `discussions` (
`id` INT(25) UNSIGNED AUTO_INCREMENT PRIMARY KEY ,
`subject` VARCHAR(120) NOT NULL ,
`last_author` INT(25) NOT NULL
);
CREATE TABLE `messages` (
`id` INT(25) UNSIGNED AUTO_INCREMENT PRIMARY KEY ,
`discussion` INT(25) NOT NULL ,
`author` INT(25) NOT NULL ,
`message` TEXT
);
是否有可能形成一個查詢,將選擇所有的討論,每個討論,選擇主題,最後作者名稱和最近的消息文本?
我可以使用此代碼來顯示每個討論的所有科目爲:
<?php
$sqlcmd = "SELECT * FROM _discussions";
$get = mysqli_prepare($sqlConnection,$sqlcmd);
mysqli_stmt_execute($get);
mysqli_stmt_bind_result($get, $id, $subject, $last_author);
while(mysqli_stmt_fetch($get)) : ?>
<li><?=$subject?></li>
<?php endwhile;
mysqli_stmt_close($get);
?>
但我如何獲得作者姓名和消息,如果我不能啓動環路內的另一個SQL查詢?
這'而(mysqli_stmt_fetch($獲得)); ?''需要'while(mysqli_stmt_fetch($ get)):?>' - 同時確保啓用短標籤'<?=' - 如果沒有,請執行<<?php echo' – 2014-09-13 03:22:19
哦,對不起,這是一個錯字。 – Cbas 2014-09-13 13:31:51