如何在其他设备中检查后仍然检查复选框

时间:2016-01-07 03:03:08

标签: php checkbox

我正面临一些问题,试图让复选框保持在另一台设备中检查,我能够在浏览器中检查复选框,所以在浏览器刷新后,复选框仍然被检查,所以有任何想法如何我可以这样做吗?

所以这是我的代码,首先我包括dcConnect.php连接到数据库然后我从数据库中检索数据以显示在网站上

<?php
include_once("dcConnect.php");

$dcData = "SELECT dcID, dcServerName, dcServerAge, dcServerGender, dcServerMarital FROM dcUsers";

$result = $link->query($dcData);

if($result->num_rows >0){
    echo"<table><tr><th></th><th>ID</th><th>Name</th><th>Age Group</th><th>Gender</th><th>Marital Status</th></tr>";
    while($row = $result->fetch_assoc()){
        echo"<tr><td><input type='checkbox' id='". $row["dcID"] ."' name='". $row["dcID"] ."' value='off' ></input></td><td>". $row["dcID"] ."</td><td>". $row["dcServerName"] ."</td><td>". $row["dcServerAge"] ."</td><td>". $row["dcServerGender"] ."</td><td>". $row["dcServerMarital"] ."</td></tr>";




    }
    echo "</table>";

    }else{
        echo"no results";

    }

$link->close();



?>

这是我的网站,其中复选框可以在刷新后保持检查,但不能在其他设备中检查 http://forstoringdata.com/default.php

2 个答案:

答案 0 :(得分:0)

目前看起来您正在使用Cookie来保存复选框的状态。 Cookie存储在客户端(即用户的计算机)而不是服务器端,这就是为什么您没有看到跨设备保留的复选框状态。

为了保存和检索数据库中的复选框状态,您需要在数据库表中添加一个附加列。按照上面的模式,这可能是一个名为lke&#39; dcChecked&#39;的布尔列。

然后,当您打印输入时,您可能希望执行以下操作:

<input type="checkbox" <?php if($row['dcChecked']) { print 'checked' } ?></input>

(为了清楚起见,这是简化的,您仍然希望包含ID,名称等的其他属性)

答案 1 :(得分:0)

<?php

include_once("dcConnect.php");

$dcData = "SELECT dcID, dcServerName, dcServerAge, dcServerGender, dcServerMarital, dcChecked FROM dcUsers";

$result = $link->query($dcData);
?>

<?php if($result->num_rows > 0): ?>
<table>
  <tr>
    <th></th><th>ID</th>
    <th>Name</th>
    <th>Age Group</th>
    <th>Gender</th>
    <th>Marital Status</th>
  </tr>
<?php foreach($rows as $row): ?>
  <tr>
    <td><input type='checkbox' id="<?php print $row["dcID"]; ?> " name="<?php print $row["dcID"]?>" value='off' <?php if($row["dcChecked"]): ?>checked<?php endif;?>></input></td>
    <td><?php print $row["dcID"]; ?></td>
    <td><?php print $row["dcServerName"]; ?></td>
    <td><?php print $row["dcServerAge"]; ?></td>
    <td><?php print $row["dcServerGender"]; ?></td>
    <td><?php print $row["dcServerMarital"]; ?></td>
  </tr>
<?php endforeach; ?>
</table>

<?php else: ?>
  No results
<?php endif; ?>

这里的语法在上下文中会是什么样子。我还重构了一下,使它更具可读性。