Php 计算一行中1或0的数量并显示它们?
我正在尝试创建一个管理员通知系统,其中在名为“siteconfig”的数据库表中,我有一行名为setting='adminalerts',该行将包含某些警报列,例如: nauseralert未激活用户警报 0或1 mmsitealert维护模式站点警报 0或1 等等。。。 我正在尝试编写一些代码,计算行中0或1的数量,并将值显示为数字。因此,如果上述两项都设置为1,则该值将为2,如果只有1个警报处于活动状态,则该值将为1。如果没有激活的警报,则它将显示为0等。。。这是我试图尝试的代码,但它似乎不起作用?我希望这里能有点帮助!谢谢Php 计算一行中1或0的数量并显示它们?,php,mysql,database,rows,Php,Mysql,Database,Rows,我正在尝试创建一个管理员通知系统,其中在名为“siteconfig”的数据库表中,我有一行名为setting='adminalerts',该行将包含某些警报列,例如: nauseralert未激活用户警报 0或1 mmsitealert维护模式站点警报 0或1 等等。。。 我正在尝试编写一些代码,计算行中0或1的数量,并将值显示为数字。因此,如果上述两项都设置为1,则该值将为2,如果只有1个警报处于活动状态,则该值将为1。如果没有激活的警报,则它将显示为0等。。。这是我试图尝试的代码,但它似乎不
<?
$sitealerts = mysql_query("SELECT * FROM siteconfig WHERE setting='adminalerts'");
$adminalerts = mysql_num_rows($sitealerts);
if ($nonactivated < 0){
echo 'Admin Alerts';
} else {
echo 'No Alerts';
}
echo $adminalerts;
?>
我知道这可能是完全错误的,但这是一个非常新的东西,并试图在网上找到它,但不太确定我真的明白如何做到这一点 您必须访问列才能计算正确的值:
$sitealerts = mysql_query("SELECT * FROM siteconfig WHERE setting='adminalerts'");
//if the query was OK
if($sitealerts) {
//loop through all result rows
while(FALSE !== ($row = mysql_fetch_assoc($sitealerts))) {
//do the calculation
$count = 0;
$count += intval($row['nauseralert']);
$count += intval($row['mmsitealert']);
if($count > 0) {
print $count;
}
print '<br />';
}
mysql_free_result($sitealerts);
}
mysql是用PHP5.5编程的 最好使用mysqli
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
// checking connection
if (mysqli_connect_errno()) {
exit();
}
if ($result = $mysqli->query("SELECT (nauseralert+mmsitealert) as alerts_count FROM siteconfig WHERE setting='adminalerts'")) {
while ($row = $result->fetch_row()) {
if($row['alerts_count'])
echo $row['alerts_count'];
else echo ' ';
}
$result->close();
}
$mysqli->close();
绝对正确!工作请客,非常感谢!如果没有错误,有没有办法让它显示一个黑色的空格而不是0?