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

PHP动态下拉列表

PHP动态下拉列表,php,html,mysql,mysqli,Php,Html,Mysql,Mysqli,我试图制作一个下拉列表,其中包含的选项与数据库表中的选项一样多 $qry3 = "SELECT * FROM employees WHERE buss_id_fk = '{$_SESSION ['user_id']}' "; $result3 = mysqli_query ( $con, $qry3); while ($row4 = mysqli_fetch_assoc($result3)){ echo $row4['emp_id'] . " " . $row

我试图制作一个下拉列表,其中包含的选项与数据库表中的选项一样多

    $qry3 = "SELECT * FROM employees WHERE buss_id_fk = '{$_SESSION ['user_id']}' ";
    $result3 = mysqli_query ( $con, $qry3);

    while ($row4 = mysqli_fetch_assoc($result3)){ 
    echo $row4['emp_id'] . " " . $row4['username'] . '</br>';
    }
$qry3=“从员工中选择*,其中buss_id_fk='{$\u SESSION['user_id']}'”;
$result3=mysqli_查询($con,$qry3);
而($row4=mysqli_fetch_assoc($result3)){
echo$row4['emp_id']。“$row4['username']”。
; }
$qry3是我的查询,它可以与$row4配合使用,所有内容都按预期显示。现在,当我移动到我的表单中,我的下拉列表应该存在时,我生成了以下代码

 <!--the list of employees the business has -->
                  <select name="employees" class="form-control">

 <?php while ($row3 = mysqli_fetch_assoc($result3)) {

 echo "<option value='" .$row3['emp_id']. "'>" .$row3['username']. "</option>" ;

                  } ?>

                  </select> <br>



我的下拉列表显示零结果,而它应该显示一些,就像$row4一样。检查了一个类似的问题,代码中有输入错误,没有帮助。谢谢

如果希望再次遍历结果,则需要将指针重置回结果集的开头:

<?php 
    mysqli_data_seek($result3, 0); // Zero indicates the beginning
    while ($row3 = mysqli_fetch_assoc($result3)) {

如果希望再次遍历结果,则需要将指针重置回结果集的开头:

<?php 
    mysqli_data_seek($result3, 0); // Zero indicates the beginning
    while ($row3 = mysqli_fetch_assoc($result3)) {

两个代码示例是否同时运行?如果是这样的话,我想这就是问题所在。当您使用$row4循环遍历所有$result3时,您已经将mysql中的指针移到了末尾,因此当您到达select($row3)时,就没有更多的行可循环了。我在$row3实际上不起作用之后创建了$row4,所以我不确定为什么指针不在值的开头,在编写代码之前,我没有对该表进行任何操作,不过我对其他表进行了一些SQL操作。弄不明白为什么会发生这种情况。谢谢你的评论!警告:使用
mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。永远不要把
$\u POST
$\u GET
或任何用户数据直接放入查询,如果有人试图利用你的错误,这可能是非常有害的。哦,亲爱的上帝,我再次遇到这个警告,我想我真的应该检查一下准备好的语句,不过bind参数对我来说是新的。谢谢你花时间提醒我这件事!您是否有两个同时运行的代码示例?如果是这样的话,我想这就是问题所在。当您使用$row4循环遍历所有$result3时,您已经将mysql中的指针移到了末尾,因此当您到达select($row3)时,就没有更多的行可循环了。我在$row3实际上不起作用之后创建了$row4,所以我不确定为什么指针不在值的开头,在编写代码之前,我没有对该表进行任何操作,不过我对其他表进行了一些SQL操作。弄不明白为什么会发生这种情况。谢谢你的评论!警告:使用
mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。永远不要把
$\u POST
$\u GET
或任何用户数据直接放入查询,如果有人试图利用你的错误,这可能是非常有害的。哦,亲爱的上帝,我再次遇到这个警告,我想我真的应该检查一下准备好的语句,不过bind参数对我来说是新的。谢谢你花时间提醒我这件事!哇,成功了。为什么这是必要的呢?请你解释一下好吗?我制作$row4是为了测试在$row3不起作用之后是否从表中检索到值,因此它不应该是关于$row4的。我以前从来没有遇到过这个问题,因为数据指针位于结果集的末尾,所以下次尝试访问该结果集时,它看起来好像没有更多的行可以迭代。通过将指针重置回起始位置,您可以再次访问该结果集,并可以再次对其进行迭代。是的,我理解这一点,但在$row3代码之前,我没有对该表进行任何操作。但它不起作用,在那之后,我制作了$row4来测试这些值是否真的从表中提取出来。现在我删除了$row4,删除了mysqli_data_seek(),它可以正常工作了。。。太奇怪了。确保你没有在其他地方迭代那个结果集。就像调试代码一样,在遍历这个表之前,我确实遍历了这个页面上的另外两个表,可能指针仍然停留在以前操作的某个地方。多谢了,伙计,你的答案解决了问题。哇,它成功了。为什么这是必要的呢?请你解释一下好吗?我制作$row4是为了测试在$row3不起作用之后是否从表中检索到值,因此它不应该是关于$row4的。我以前从来没有遇到过这个问题,因为数据指针位于结果集的末尾,所以下次尝试访问该结果集时,它看起来好像没有更多的行可以迭代。通过将指针重置回起始位置,您可以再次访问该结果集,并可以再次对其进行迭代。是的,我理解这一点,但在$row3代码之前,我没有对该表进行任何操作。但它不起作用,在那之后,我制作了$row4来测试这些值是否真的从表中提取出来。现在我删除了$row4,删除了mysqli_data_seek(),它可以正常工作了。。。太奇怪了。确保你没有在其他地方迭代那个结果集。就像调试代码一样,在遍历这个表之前,我确实遍历了这个页面上的另外两个表,可能指针仍然停留在以前操作的某个地方。非常感谢,你的回答解决了问题。