![](/img/trans.png)
[英]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.