Php 如果值为true,则显示,如果值为false,则显示其他内容

Php 如果值为true,则显示,如果值为false,则显示其他内容,php,Php,我的表中存储了一些文件名,每个图像都有一个category_id 我把画廊都放在一页上了 所以我的问题是,如果我的category_id的值是3,那么我希望它显示图像 如果category_id不是3,我想显示一条消息,说没有内容,或者其他什么 这是我的密码。不知道我哪里出错了。希望有人能帮我一把 <?php $newlogos = DB::getInstance()->query("SELECT `logo_id`, `creation`, `logo_name`, `categ

我的表中存储了一些文件名,每个图像都有一个category_id

我把画廊都放在一页上了

所以我的问题是,如果我的category_id的值是3,那么我希望它显示图像

如果category_id不是3,我想显示一条消息,说没有内容,或者其他什么

这是我的密码。不知道我哪里出错了。希望有人能帮我一把

<?php

$newlogos = DB::getInstance()->query("SELECT `logo_id`, `creation`, `logo_name`, `category_id`, `org_img`, `new_img` FROM `logos` WHERE category_id = 3 ORDER BY `logo_id` DESC ");

$category_id = ('category_id' == 3);

if($category_id == false){ ?>
<div><h2>No Content</h2></div>
<?php }     

 if($category_id == true){ 

foreach($newlogos->results() as $nl){ ?>
//Do Stuff
我试过一系列类似这样的组合,例如:

$category_id = ('category_id' == 3);

if($category_id != 3){ ?>
<div><h2>No Content</h2></div>
<?php }     

 else{ 
//Do Stuff

只是似乎无法理解。

你在这里的说法不正确:

<?php
    $category_id = ('category_id' == 3);
?>
您试图将字符串与整数进行比较,结果总是返回false

编辑:

执行查询后,需要从数据库中获取数据。将数据存储在变量(例如$data)中后,可以按如下方式进行比较:

<?php
  $category_id = ((int)$data['category_id'] == 3);
?>
编辑:@cwd:

以下是一种方法:

<?php
  //$con is database connection object
  $result = mysqli_query($con,"SELECT `logo_id`, `creation`, `logo_name`, `category_id`, `org_img`, `new_img` FROM `logos` WHERE category_id = 3 ORDER BY `logo_id` DESC LIMIT 0,1");
  $row = mysqli_fetch_assoc($result);
  $category_id = (int)$row['category_id'] == 3 ?true:false;
 ?>

这可能会对你有所帮助。

这是CodeIgniter吗?@AliGajani不,这不是CodeIgniter$category\u id='category\u id'==3;世界跆拳道联盟?!?您正在测试值为“category_id”的字符串的值是否为3。。。。。当然没有,就像苹果树永远不是鳄鱼一样,$category\u id='category\u id'==3;总是计算为布尔值false,我很确定这不是你的意思字符串'category_id'永远不等于整数3。也许是在一个平行的宇宙中。好吧,很明显我的$category\u id='category\u id'==3;党-5下降选票和计数。有人能告诉我应该是什么吗?如果不太麻烦的话。