Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.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_Checkbox - Fatal编程技术网

Php 默认情况下,根据字符串或数组值选中复选框

Php 默认情况下,根据字符串或数组值选中复选框,php,html,checkbox,Php,Html,Checkbox,我正在构建一个提交表单,该表单可以在事后编辑,并且有一系列复选框可以提交到数组,但是当我编辑数据时,我希望之前选中的复选框已经被选中。当表单最初提交时,所有复选框都进入一个数组,该数组将内爆,并放入数据库中的单个单元格中。这就是我目前所拥有的 <?php $query = "SELECT * FROM profile WHERE username = '{$_SESSION['username']}' "; $result = mysqli_query($connection, $que

我正在构建一个提交表单,该表单可以在事后编辑,并且有一系列复选框可以提交到数组,但是当我编辑数据时,我希望之前选中的复选框已经被选中。当表单最初提交时,所有复选框都进入一个数组,该数组将内爆,并放入数据库中的单个单元格中。这就是我目前所拥有的

<?php
$query  = "SELECT * FROM profile WHERE username = '{$_SESSION['username']}' ";
$result = mysqli_query($connection, $query);
if (!$result) {
    $_SESSION["message"] = "You have not built your profile yet.";
    redirect_to("my_profile.php");
} 
$row = mysqli_fetch_array($result);
$activities   = $row['activities'];
?>  


<fieldset>  
     <legend>What kind of activities do you enjoy?</legend><br />
     <input type="checkbox" name="activities[]" value="sailing"/>Sailing
     <input type="checkbox" name="activities[]" value="hiking"/>Hiking
     <input type="checkbox" name="activities[]" value="gaming"/>Gaming<br />
     <input type="checkbox" name="activities[]" value="mountain_biking"/>Mountain Biking
     <input type="checkbox" name="activities[]" value="food"/>Food
     <input type="checkbox" name="activities[]" value="travel"/>Travel<br />
     <input type="checkbox" name="activities[]" value="paintball"/>Paintball
<input type="checkbox" name="activities[]" value="computers"/>Computers
</fieldset> 

你的逻辑是错误的。不返回行的查询不是失败。这是一个完全有效的查询结果,碰巧没有行。mysqli_查询返回结果句柄或布尔值false。布尔false只有在真正失败时才会返回。e、 sql语法错误,通信错误,诸如此类。分解$activities,然后使用类似ifin_数组'sailing',$activities{echo'checked';}的东西。谢谢,这对我的要求非常有效。还有@MarcB谢谢,我没有注意到那个小错误,我会改正的。