php sql在选中复选框时获取查询

Posted

技术标签:

【中文标题】php sql在选中复选框时获取查询【英文标题】:php sql Get query when checkbox is checked 【发布时间】:2017-10-23 02:07:20 【问题描述】:

我只是想知道如何在 SQL 中获取列的值,当复选框被选中时,它会将这些值相加,因为它们是数字。

数据

表名 = 添加

    SEARCH = Dan

    -----------------------
    name   |   date    | Total | Checkbox
    -------------------------------------
    Dan    | dd/mm/yyy | 200   |  checked
    Dan    | dd/mm/yyy | 400   |  checked
    Dan    | dd/mm/yyy | 300   |  checked
    Dan    | dd/mm/yyy | 250   |  unchecked
    Dan    | dd/mm/yyy | 260   |  unchecked

TOTAL AMOUNT = 900

更新:这是我到目前为止所做的代码,但它仍然无法正常工作。

 <?php  

            include "connection.php";

                //$searchName= $_POST['submit'];


                if(isset($_POST['submit']))
                    $searchName = $_POST['submit'];

                    $searchName = preg_replace("#[^0-9a-z]#i","",$searchName);

                    $query = "SELECT * FROM adding where Code LIKE '$searchName%' ORDER BY Date";
                    $result = mysql_query($query);

                    if(mysql_num_rows($result)>0)
                        echo "<form action=Payment.php method=get>";                            
                        echo "<table border='1'>
                        <tr>
                        <th>Name</th>
                        <th>Date</th>   
                        <th>Total</th>
                        <th>Checkbox</th>
                        </tr>";
                        while($row = mysql_fetch_array($result))
                            //$idno = $row['id'];

                            echo "<tr>";
                            echo "<td>" . $row['Code'] . " </td>";
                            echo "<td>" . $row['Date'] . "</td>";
                            echo "<td>" . $row['Total'] . "</td>";
                            echo "<td><input type = \"checkbox\" name=\"pay[]\" value='$row['id']' ></td>";
                            echo "</form>"; 
                        
                        echo "<table>";
                        echo "<input type=\"submit\" name =\"button2\" value=\"Submit\">";
                        echo "</form>";

                        if(isset($_GET['pay']))

                            $checked=$_GET("pay");
                            $c= count($checked);
                            $totalpayment = $row['Total'];

                            for($i=0;$i<$c;$i++)
                                if($checked[$i]==$row['id'])
                                    $totalpayment = $totalpayment+$row['Total']; 
                                
                            
                            echo "total is: " .$totalpayment. "<br>";

                         


                    
                    else
                        echo "RECORD NOT FOUND!";
                    




                

                mysql_free_result($result);


            ?>

【问题讨论】:

【参考方案1】:

试试这个

select sum(total) as TOTAL AMOUNT from table
where Checkbox='checked' 

【讨论】:

您好,先生,感谢您的回复,我附上了代码的图片,我想知道是否可以这样做。

以上是关于php sql在选中复选框时获取查询的主要内容,如果未能解决你的问题,请参考以下文章

如果 php 和 jQuery 选中或未选中,则在 php 中动态创建复选框值

在javascript和PHP中的字符串中获取多个选中的复选框值

PHP JQuery Checkbox - 如果复选框被预先选中,它不会在未选中时删除“选中”属性

PHP:可以自动获取所有已发布的数据并且未选中多个复选框?

使用 .serializeArray 从所有选中的复选框中获取值

即使未从 HTML 检查到 PHP,如何获取所有复选框变量?