如果选中php中的复选框
我已经使用了下面的代码 order.php如果选中php中的复选框,php,ajax,if-statement,checkbox,checked,Php,Ajax,If Statement,Checkbox,Checked,我已经使用了下面的代码 order.php <script type="text/javascript"> function processForm() { $.ajax( { type: 'POST', url: 'ajax.php', data: { checked_box : $('input:checkbox:checked').val()},
<script type="text/javascript">
function processForm() {
$.ajax( {
type: 'POST',
url: 'ajax.php',
data: { checked_box : $('input:checkbox:checked').val()},
success: function(data) {
$('#results').html(data);
}
} );
}
</script>
<input type="checkbox" name="checked_box" value="1" onclick="processForm()">
和ajax.php
<?php
include "config.php";
$checkbox = intval($_POST['checked_box']);
echo $checkbox;
if($checkbox == 1){
$Query="SELECT * FROM `order` ORDER BY sl_no DESC";
}else{
$Query="SELECT * FROM `order` ORDER BY sl_no ASC";
}
$result=mysql_query($Query);
echo $Query;
while($row = mysql_fetch_object($result)) {
?>
它工作得很好,但当我取消选中时,就会显示错误
注意:未定义索引:在第24行的C:\xampp\htdocs\website\admin\ajax.php中选中\u框
如何避免这个错误?这不是一个错误,而是一个通知。如果您试图访问未初始化的变量,您将收到此类通知。只需使用适当的起始值初始化它 代码中棘手的部分是,假设您将获得复选框的值,因为它包含在表单中。但是,除非选中复选框,否则复选框不会被发送 而不是intval$\u POST['checked_box'];使用isset$_POST[“复选框”];以确保该值存在
之后,如果仍然需要该值,可以使用intval。这是因为POST请求中只包含复选框。因此,您需要检查您的复选框键是否存在,以确定是否设置了复选框:
if(isset($_POST['checked_box']) {
.. set
} else {
.. not set
}
我有一个选择下拉框
<select name="status" id="status" onchange="changeStatus()">
<option value="step_1">step_1</option>
<option value="step_2">step_2</option>
<option value="step_3">step_3</option>
<option value="step_4">step_4</option>
</select>
还有我的javascript
<script>
function changeStatus() {
$('select.changeStatus').change(function(){
$.ajax({
type: 'POST',
url: 'update_status.php',
data: {changeStatus: $('select.changeStatus').val()},
dataType: 'html'
});
});
});
</script>
因此,我希望从选择下拉框中选择的值发送到php文件更新_status.php是我还是什么,为什么要对所有内容进行向下投票?请提供ajax的完整代码。php@Sourabh23那就考虑接受这个答案吧。下面是如何返回此处并对勾号/复选标记执行相同操作,直到其变为绿色。这会通知社区,找到了解决方案。否则,其他人可能会认为问题仍然悬而未决,并可能希望发布更多答案。