a_moip
和a_google_analy
是数据库中的整数,作为其他字符串
<?
@$c_google = $_POST['c_google_analystics'];
@$c_moip = $_POST['c_moip'];
$code = $_POST['google_analystic'];
$token = $_POST['moip_token'];
$key = $_POST['moip_key'];
if(isset($c_google) or isset($c_moip)) {
if(!isset($c_google)) {
$c_google == 0;
$code == NULL;
}
else {
$c_google == 1;
}
if(!isset($c_moip)) {
$c_moip == 0;
$key == NULL;
$token == NULL;
}
else {
$c_moip == 1;
}
$q = new Query;
$q
->update('config')
->set(
array(
'a_google_analy' => $c_google,
'a_moip' => $c_moip,
'google_analy' => $code,
'moip_token' => $token,
'moip_key' => $key
)
)
->where_equal_to(
array(
'id' => 1 // bug fix
)
)
->run();
}
else {
$q = new Query;
$q
->update('config')
->set(
array(
'a_google_analy' => 0,
'a_moip' => 0,
'google_analy' => NULL,
'moip_token' => NULL,
'moip_key' => NULL
)
)
->where_equal_to(
array(
'id' => 1 // bug fix
)
)
->run();
}
?>
我在数组中进行了打印,该变量未被处理,在“打开”时始终显示。
答案 0 :(得分:1)
您使用双等号==
为
$c_google == 0;
$code == NULL;
使用单=
,请更正所有
答案 1 :(得分:1)
您的复选框必须包含值。假设你现在有这样的东西:
<input type="checkbox" name="some_name" />
未指定值,但浏览器必须在提交时向服务器发送一些值。默认值为on
,这就是您在检查时获得on
的原因。如果未选中复选框,则根本不会发送其值。
如果您想在选中复选框时在$_POST
中获得某些特定值,只需将value="some_val"
添加到您的复选框标记:
<input type="checkbox" name="some_name" value="some_value" />