我正在製作一個私人消息系統,並且我在while
語句中使用mysqli_fetch()
函數返回與查詢關聯的所有行。但是,PHP只返回MYSQL中的最後一行。mysqli_fetch:返回一行
這裏是我的代碼:
<?php
$Connect = new mysqli("localhost", "root", "", "Data");
error_reporting(E_ALL^E_NOTICE);
session_start();
$Val = $_POST['ID'];
$Get = 'SELECT * FROM CMessages WHERE PID="'.$Val.'"';
$Username = $_SESSION['Username'];
$Admin = $_SESSION['Admin'];
if($Result = $Connect->query($Get))
{
while($Row = $Result->fetch_assoc())
{
$User = $Row['Username'];
$Msg = $Row['Msg'];
$Date = $Row['Date'];
$ID = $Row['ID'];
if($User == $Username)
{
$MText['T'] = '<div id="Msg">' . $User . ' : ' . $Msg . ' - ' . $Date .' - <a class="TLink" href="MDelete.php?ID='.$ID.'">Delete</a></div>';
}
elseif(isset($Admin))
{
$MText['T'] = '<div id="Msg">' . $User . ' : ' . $Msg . ' - ' . $Date .' - <a class="TLink" href="MDelete.php?ID='.$ID.'">Delete</a></div>';
}
else
{
$MText['T'] = '<div id="Msg">' . $User . ' : ' . $Msg . ' - ' . $Date .'</div>';
}
}
}
echo json_encode($MText);
?>
phpmyadmin中有3行與我的查詢在$ Get變量中查找的值相同 – 2013-02-12 02:10:17
如果您使用的是'mysqli',這是一件好事,請務必使用[SQL佔位符]( http://bobby-tables.com/php)正確地轉義您的數據。 – tadman 2013-02-12 02:12:51
什麼是「PID」?給你的表結構,以及你應該返回的例子數據集。還要考慮['準備statements'(http://www.google.com/search?q=prepared%20statements)當你使用的mysqli了。 – mario 2013-02-12 02:13:15