使用if、elseif及else,不进判断直接输出else里的,是数据库表头类型问题还是语句错误?
希望各位能给予帮助!
$sql="select * from `shipin` where id =".$zyid;
$result=mysql_query($sql,$conn);
$shipin=mysql_fetch_array($result);
$sql="select * from `peizhi` where id =1";
$user=queryall(user,$type);
$peizhi=queryall(peizhi,"where id='1'");
$totalMoney=$ubomoney;
if($peizhi[al]>0){
if(($peizhi[al]=="1")or($user[al]=="1")){
if($shipin){
$shipin=queryall(shipin,"where id='$zyid'");
if(intval($shipin[al])){
$totalMoney=$shipin[al];//金额 自定义
}
}
}elseif(($peizhi[al]=="2")or($user[al]=="2")){
$shipin=queryall(shipin,"where id='$zyid'");
if($shipin['is_lei']==1){
$totalMoney=$ubomoney*100;//金额 百倍
}
}
}else{
$shipin=queryall(shipin,"where id='$zyid'");
$totalMoney=$ubomoney;//正常
}
$peizhi[al]是总开关,设置0/1/2分别为正常、自定义、百倍。
$user[al]是单独控制开关,设置0/1/2分别为正常、自定义、百倍。
执行的话不走if($peizhi[al]>0 里的判断··而是直接走else的。怎么破?
是我语句有问题这样就好了···但是又出现新问题·····
我想实现总开关peizhi为1的时候执行user为2的结果·总开关peizhi为2的时候执行user为1的结果·
现在的情况是总开关peizhi为2的时候执行user为1的结果是正常的!总开关peizhi为1的时候执行user为2的结果却不正常··执行的是配置为1的结果···是逻辑问题吗?改怎么修改?我试了半天没弄明白···谢谢!
https://www.52pojie.cn/thread-861129-1-1.html
打印看看$peizhi的结果再往if下面走
peizhi表:数据库设计时允许为空,当未设置al值时不会大于0所以直接执行 else了
$peizhi=queryall(peizhi,"where id='1'");
这一句queryall方法没有原型我无法判断是不是这里没有取得值
您可打印一下 echo $peizhi 看有什么值