$data
始终为 true
并且复选框始终返回 "YES"
。如何解决这个问题?
function yesNo($data){
if($data){
return "YES";
}else{
return "NO";
}
}
这里的复选框:
$txt.="Rozpoczynam działalność gospodarczą: ".yesNo($_POST['indywidualne'])."<br>";
if(!isset($_POST['komunikacja'])||!trim($_POST['komunikacja'])){
$result = array( 'type' => 'error', 'code' => "podaj komunikacje");
endSend($result);
}
$txt.="Chce rozliczać się w terminach kwartalnych: ".yesNo($_POST['komunikacja'])."<br>";
if(!isset($_POST['firmowe'])||!trim($_POST['firmowe'])){
$result = array( 'type' => 'error', 'code' => "podaj rodzaj rozliczenia o");
endSend($result);
}
$txt.="Płatnik VAT: ".yesNo($_POST['firmowe'])."<br>";
if(!isset($_POST['ewidencja'])||!trim($_POST['ewidencja'])){
$result = array( 'type' => 'error', 'code' => "podaj email");
endSend($result);
}
html 中的复选框:
<label for="checkbox-vat">
<input type="checkbox" name="" id="checkbox-vat"> Płatnik VAT
</label>
<label for="checkbox-activity">
<input type="checkbox" name="" id="checkbox-activity"> Rozpoczynam działalność gospodarczą
</label>
<label for="checkbox-quarterly">
<input type="checkbox" name="" id="checkbox-quarterly"> Chce rozliczać się w terminach kwartalnych
</label>
最佳答案
如我所见,您在 $data
变量中传递了一些值。并且 IF 条件将其视为一个值,IF 语句中的任何内容都将被视为 TRUE。
复选框返回值 YES
或 NO
。 IF 语句
的复选框 YES
或 NO
的值始终为 TRUE。
只需更改为:
function yesNo($data){
// echo $data;die; //uncomment this statement to see $data value
if(strtolower($data)=='yes'){
return "YES";
}else{
return "NO";
}
}
假设您有如下复选框字段:
<input type="checkbox" name="check_yes" value="yes" />
<input type="checkbox" name="check_no" value="no" />
您将收到复选框值 yes
或 no
。请在此处放置您的复选框字段或写下您为其赋予的值。
更新的答案:如果选中复选框,您将获得复选框值,否则复选框名称不存在于 $_POST
或 $_GET
数据数组。
正如我所见,您没有为复选框提供名称和值。因此,您的情况是 $_POST
或 $_GET
数据数组中不存在复选框名称和值。
关于php - 为什么我的数据总是正确的,并且复选框总是返回 "YES"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52889430/