![](/img/trans.png)
[英]php mysql where statement with AND return true even if the second condition is false
[英]Condition if return true with ajax and php even it is false
我使用ajax將表單發送到php,表單工作正常,但復選框無法正常使用if
條件。
var_dump($check1);
的輸出var_dump($check1);
錯誤或真實它工作正常,輸出沒問題。
echo " checked";
的輸出echo " checked";
var_dump($check1);
甚至var_dump($check1);
檢查所有時間var_dump($check1);
是假的。
我的錯誤在哪里?為什么輸出始終為真?
send_ajax.php
<div id="txt">Result</div>
<input type="text" name="in1" id="in1" required="required"/><br>
<input type="text" name="in2" id="in2" required="required"/>
<input type="checkbox" name="checkbox" id="checkbox" required="required"/>
<button type="submit" class="" name="up" id="up" >Sign Up</button>
<script>
$("#up").click(function(){
var in1=$("#in1").val();
var in2=$("#in2").val();
var checkbox1=$('#checkbox').is(':checked');
// var checkbox1=$("#checkbox").val();
$.ajax({
url:'confirm.php',
method:'POST',
data:{
in1:in1,
in2:in2,
checkbox1:checkbox1
},
success:
function(data) {
$("#txt").html(data);
}
});
})
</script>
confirm.php
<?php
$in1=$_POST["in1"];
$in2=$_POST["in2"];
$check1=$_POST["checkbox1"];
var_dump($check1);
echo "<br>";
if($check1==true){
echo " checked";
}
else{
echo " not checked";
}
?>
您正在使用
$check1=$_POST["checkbox1"];
但名稱是復選框
$check1=$_POST["checkbox"];
布爾值的傳輸和服務器端的檢查可能由於低鍵入而導致意外。
如果以這種方式啟動變量會發生什么?
$check1= $_POST["checkbox1"] == 'true' ? true : false;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.