我对此代码有麻烦:
if ($_GET['offline']) {$extranet = $_GET['offline'];} else {$extranet = $online;}
$sql = mysqli_query($db,"UPDATE tbl_system SET value = '$extranet' WHERE property = 'extranet'");
echo $_GET['offline'];
echo $extranet;
echo $online;
在数据库中,属性= Extranet的字段的值为1。
回声结果:
$_GET['offline'] = 0
$extranet = 1
$online = 1
现在,显然,这里出了问题。
提供此GET的URL是:
?app=admincp&offline=0
,所以$_GET['offline']
不是问题。问题必须出在if语句上,但我无法弄清楚,
有任何想法吗?
最佳答案
$ _GET ['offline']为0,且0的计算结果为false,因此该语句正确。如果要检查是否将脱机作为参数传递,则必须使用isset()
if (!isset($_GET['offline'])) {$extranet = $_GET['offline'];} else {$extranet = $online;}
关于php - PHP + MySQL问题:(,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1290596/