[英]While loop within if statement that is within a foreach loop… not working well
[英]IF statement within WHILE not working
我正在開發一個基本的郵件系統。 這是為了獲取所有消息並使表中未讀消息的行變為綠色。 表格中有一列叫做“ msgread”。 默認情況下將其設置為“ 0”。 因此,它應該使任何一行的msgread = 0->綠色。 這僅適用於具有代碼的表的第一行-我已驗證它始終獲得0值,但是它僅在while語句中才有效。
require('./connect.php');
$getmessages = "SELECT * FROM messages WHERE toperson = '" . $userid . "'";
echo $getmessages;
$messages = mysql_query($getmessages);
if(mysql_num_rows($messages) != 0) {
$table = "<table><tr><th>From</th><th>Subject</th><th>Message</th></tr>";
while($results = mysql_fetch_array($messages)) {
if(strlen($results[message]) < 30){
$message = $results[message];
}
else {
$message = substr($results[message], 0 ,30) . "...";
}
if($results[msgread] == 0){
$table .= "<tr style='background:#9CFFB6'>";
$table .= "<td>" . $results[from] . "</td><td>" . $results[subject] . "</td><td><a href='viewmessage.php?id=" . $results[message_id] ."'>" . $message . "</a></td></tr>";
}
else {
$table .= "<tr>";
$table .= "<td>" . $results[from] . "</td><td>" . $results[subject] . "</td><td><a href='viewmessage.php?id=" . $results[message_id] ."'>" . $message . "</a></td></tr>";
}
}
echo $table ."</table>";
}
else {
echo "No Messages Found";
}
這里有所有代碼,包括從數據庫中獲取信息。 謝謝。
if(strlen($results[message]) < 30){
該消息可能應該被引用:
if(strlen($results['message']) < 30){
還有很多其他類似的問題
我測試了您的代碼,發現的唯一錯誤是索引數組$ results中缺少定界標記。 當最合適的是$result['message_id']
時,您正在使用此$result[message_id]
$result['message_id']
。 其余的按預期方式工作,msgread等於0的記錄保留在綠線中。
您的代碼看起來有些討厭,不容易閱讀。
mysqli_fetch_assoc()
。 $userid
來自哪里? 內容安全嗎? 這是您的代碼的快速清除版本:
$query = "SELECT * FROM messages WHERE toperson = '" . $userid . "'";
if($results = mysqli_query($query)) {
if(mysqli_num_rows($results) != 0) {
$table = "<table><tr><th>From</th><th>Subject</th><th>Message</th></tr>";
while($data = mysqli_fetch_assoc($results)) {
if(strlen($data['message']) > 30){
$data['message'] = substr($data['message'], 0 ,30) . "...";
}
$table .= "<tr";
if($data['msgread'] == 0){
$table .= " style='background:#9CFFB6;'";
}
$table .= ">";
$table .= "<td>" . $data['from'] . "</td><td>" . $data['subject'] . "</td><td><a href='viewmessage.php?id=" . $data['message_id'] ."'>" . $data['message'] . "</a></td></tr>";
}
echo $table ."</table>";
} else {
echo "No Messages Found";
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.