【问题标题】:send checkbox value in php在php中发送复选框值
【发布时间】:2015-09-13 06:35:36
【问题描述】:

有谁知道每次我在表单中勾选复选框时如何在 php 中编码? 当我勾选复选框时,该值假设实际插入到我的数据库中的 id 列中,并且每次我勾选并提交表单时它都会自动增加。

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 问题不清楚...
  • @donald123 '$cbox = $_POST['tickExam']; for($i = 0; $i
  • @Julo0sS 我的问题是,在我的视图页面中,我有一个表格,表格中显示的记录很少。现在我在每个数据行旁边显示一个复选框,所以如果每次我勾选一个行的复选框,我希望复选框向我的数据库中的 id 列发送一个值(并且每次值将增加 1 )。
  • 价值增加 1 是什么意思?每次您发布带有字段检查的表单时,数据库中的某些字段都会增加?

标签: php checkbox


【解决方案1】:

您需要使用 ajax。以下是代码sn-p。

$('input:radio[name="tickExam"]').click(function() {
if(this.checked){
        $.ajax({
            type: "POST",
            url: 'increase.php',
            data: {id:$(this).val()},
            success: function(data) {
                alert('Increased.....');
            },
             error: function() {
                alert('Sorry! there was an issue');
            }
        });

        }
  });

在 increase.php 中编写代码以增加表中的值。

【讨论】:

  • 你是什么意思“代码来增加表中的价值”?你的意思是我必须做一个插入php页面并且在页面中我必须编写一个for循环?这是否意味着每次我勾选复选框时,它会自动增加表格的id列中的值吗?
  • 抱歉,我的本意是在您的表格的列中插入 id。
  • 我不确定我是否完全理解上面的陈述,但这是我面临的一个场景。 - 我的问题是,在我的视图页面中,我有一个表格,表格中显示的记录很少。现在我在每个数据行旁边显示了一个复选框,所以如果每次我勾选一个行的复选框,我希望复选框向我的数据库中的 id 列发送一个值(并且每次值将增加 1 ).- 你知道如何创建代码吗?
  • PHP 在服务器中生成一个 HTML 页面,并将其发送给请求者用户。您无法从 PHP 操纵客户端发生的事情,这就是您需要 javasript 的原因。 Ajax 是一种允许您与服务器进行异步通信的架构,因此可以对服务器中的某些 PHP 文件发出新请求,以生成一些内容并将其发送回 javascript。然后javascript可以做任何需要的事情。您的问题不容易理解,因为您似乎不知道每件事何时何地运行。我强烈建议您在 Google 上找到一些图表
【解决方案2】:

好的,所以你有这个:

<form ...>
    <table>
        <tr>
            <td>
            </td>
            //...
            <td>
                <input type='checkbox' value='YOUR_ID' name='checkboxarray[]'/>
            </td>
        </tr>
    </table>
    <input name='submit' type='submit' ...>
</form>

您希望在提交时,相应的 ID 数据库记录“计数器字段”增加 1 'IF THE BOX IS CHECKED'

然后,这样做:

//if you posted : 
if(isset($_POST['submit'])){
    //here you have to handle your data
    //your checkbox array is not empty IF there is something checked, so : 
    if(is_array($_POST['checkboxarray'])){
        foreach($_POST['checkboxarray'] as $value){
            //HERE YOUR $VALUE IS THE ID OF THE DB RECORD (if you dit id the way I explain it over), so do your database stuff here, just increase your field WHERE id = $value !
        }
    }else{
        //no checkboxes checked
    }
}else{
    //nothing posted, just display your form
}

这是你需要的吗?

有谁知道每次我在表单中勾选复选框时如何在 php 中编码?当我勾选复选框时,该值假设实际插入到我的数据库中的 id 列中,并且每次我勾选并提交表单时它都会自动增加。

当你说“每次我勾选并提交表格”时考虑你的帖子,那么在你的情况下不需要使用 javascript 或 ajax

【讨论】:

  • 你介意举个数据库语句的例子吗?我只知道基本的数据库语句,如插入和选择。我不确定如何增加 id =$value。
  • @ayowhassup 好吧,我对您的数据库一无所知...通常,如果您有串行序列,则不必手动增加您的 id ......这就像插入或更新语句,您的数据库是什么? PostgreSQL?玛丽亚?还有吗?
  • 当您在 foreach 循环中时,$value = 选中的复选框的值(对应于您所说的数据库 id)。所以,你知道,已经检查了 id = $value 的数据库记录......我够清楚了吗? ^^ :)
猜你喜欢
  • 2013-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-27
  • 1970-01-01
  • 1970-01-01
  • 2015-08-07
  • 1970-01-01
相关资源
最近更新 更多