php的一个数据判断问题,高手请回答!

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:45:35
$strselect="";
if ($kind_fid!="0"){
$result=mysql_query("SELECT kind_id,kind_name from {$tablepre}kind where kind_fid=$kind_gid order by kind_sort");
while ($row=mysql_fetch_array($result)){
$strselect=$strselect."<option value=$row[kind_id]";
if ($kind_fid==$row[kind_id]){$strselect=$strselect." selected ";}

$strselect=$strselect.">$row[kind_name]</option>";
}
}else{
$strselect=$strselect."<option value=0 selected>一级分类</option>";
}

当if ($kind_fid!="0")
里面无法正确读取,运行结果老是显示
一级分类

if ($kind_fid!="0"){
在这句前面添加
if($kind_fid=="0"){
echo "\$kind_fid=0<br/>";
}
else{
echo "\$kind_fid!=0<br/>";
}
if($kind_fid==0){
echo "\$kind_fid=0<br/>";
}
else{
echo "\$kind_fid!=0<br/>";
}
echo gettype($kind_fid);
调试一下~

你怎么知道$kind_fid确实不等于0的

if ($kind_fid!="0")
改为if ($kind_fid !== 0)
你这是判断语句,一个等号就不是等于的意思了,而是赋值的意思,两个等号才是等于的意思。0的话不用加双引号,可省略。

if ($kind_fid!="0"){
//既然是 不等于 0,那么就有东西,不管是数字还是字符

你都可以使用

if ($kind_fid){ //这不也是 不等于 0 吗