Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何检查勾选了哪个复选框?_Php_Html - Fatal编程技术网

Php 如何检查勾选了哪个复选框?

Php 如何检查勾选了哪个复选框?,php,html,Php,Html,我目前正在创建一个php web应用程序。在我的一个页面pushnotification.php中,我显示了一个表,该表从mysql数据库加载一些信息,并在页面上显示它们。该表在表中加载Clientsprimary键、名称和姓氏。我还在表中添加了另一列,名为Receive Message,它由复选框组成。页面中的表格如下所示: if($record['rec_msg'] == '1') echo "<td>"."<input type='checkbox' checked>

我目前正在创建一个php web应用程序。在我的一个页面pushnotification.php中,我显示了一个表,该表从mysql数据库加载一些信息,并在页面上显示它们。该表在表中加载Clientsprimary键、名称和姓氏。我还在表中添加了另一列,名为Receive Message,它由复选框组成。页面中的表格如下所示:

if($record['rec_msg'] == '1') echo "<td>"."<input type='checkbox' checked>." </td>";
else echo "<td>"."<input type='checkbox'>." </td>";
创建该表的源代码如下所示:

function user_clients_table() {

   $con = mysql_connect("localhost","root",'');
   if(!$con){

   die("Cannot Connect" . mysql_error());

   }
    mysql_select_db("client_app",$con);
    $get_user_clients = "SELECT `ID`,`Name`,`SurName` FROM `clients`  ";
    $clients = mysql_query($get_user_clients,$con);

   echo "<table  border=2>
   <tr>   
   <th>Client</th>
   <th>Name</th>
   <th>SurName</th>
   <th>Receive Message</th>
   </tr>";
   while($record = mysql_fetch_array($clients)){
    echo "<form action=pushnotification.php method=post>";
    echo "<tr>";
    echo "<td>".$record['ID']." </td>";
    echo "<td>".$record['Name']." </td>";
    echo "<td>".$record['SurName']." </td>";
    echo "<td>"."<input type=checkbox name=checkbox[".$record['ID']."] </td>";   
    echo "</tr>";
    echo "</form>";
     }

echo "</table>";     
mysql_close();

}
如何在用户单击网站右侧引导框中的“发送”按钮后,在数组列表中保存勾选为接收消息的客户端。我只想将主键保存在数组列表中,其他什么都不想

谁能给我指路吗?
感谢您保存Receive Message值。如果客户端选中Receive Message复选框,请使用所需名称在数据库表中创建一些字段,将其设置为1,否则将其设置为0。从数据库获取数据时,检查该属性的值是否为1,然后echo;除此之外,只有回声;。假设您的属性名为rec_msg 然后像这样做:

if($record['rec_msg'] == '1') echo "<td>"."<input type='checkbox' checked>." </td>";
else echo "<td>"."<input type='checkbox'>." </td>";
在此之后,将有一个数组$receivemsg,其中包含选中复选框的ID

更新:示例数组 下面是3个复选框中数组的var_转储示例。此示例中仅选中复选框2和3

array(2) {
  [0]=>
  int(2)
  [1]=>
  int(3)
}

试试这个。。。在服务器端,您可以使用$\u POST['checkbox']获取选中值。。。此外,输入标记未正确关闭…不要使用不推荐使用的mysql_uu函数,因为它们会将您暴露于sql注入中。我尝试您的建议,它似乎只在第一个复选框上有效,但如果第一个复选框为isset@user3397260第一条if语句仅检查是否勾选了任何复选框。如果没有此选项,如果您提交时未勾选任何复选框,则会出现错误。您从$receivemsg获得的结果是什么?请尝试检查var_dump$receivemsg的结果。我已经测试了这个解决方案,它为我返回了一个ID数组。我已经用一个示例输出更新了答案。这是你希望的结果吗?
array(2) {
  [0]=>
  int(2)
  [1]=>
  int(3)
}