PHP 未正确回显下拉菜单的值

标签 php html mysql select drop-down-menu

我目前正在尝试使用 PHP 和 MYSQL 从头开始​​创建一个票务系统。我想要一个下拉菜单,允许您根据 MYSQL 中的用户列表将票证分配给用户。目前,这是我必须使用选项填充的代码:

$sqlq1 = "SELECT fname, lname FROM ticket_users";
$query = mysql_query($sqlq1);
$array = mysql_fetch_array($query);


foreach($array as $row){
echo '<option value ='."$row[fname]".'>'.$row[fname].$row[lname].'</option>';
}

我遇到的问题有三个:

  1. 代码仅从 SQL 的第一行开始打印
  2. 代码循环次数不等于用户记录数
  3. 当代码打印第一行的信息时,它仅打印每个字段的第一个字符并将它们相乘。

输出如下所示:

<h3> Assign To: <select name="assignee">
<option value =J>JJ</option>
<option value =J>JJ</option>
<option value =F>FF</option>
<option value =F>FF</option>

</select></h3>

这就是数组的 print_r 的样子:

Array ( [0] => Jim [fname] => Jim [1] => Frail [lname] => Frail )

这是 var 转储:

array(4) { [0]=> string(3) "Jim" ["fname"]=> string(3) "Jim" [1]=> string(5) "Frail" ["lname"]=> string(5) "Frail" }

我什至不确定如何搜索此问题的解决方案,因此希望我的标题也能帮助其他人找到解决方案。

预先感谢您的帮助。

PS。经过一番研究后,我确定 J 全部来自第一行的名字,所有 F 都来自第一行的姓氏。希望这会有所帮助。

最佳答案

引号可能会非常困惑,我总是喜欢在 echo block 之外设置变量。 while 循环节省了一些代码。

试试这个:

$sqlq1 = "SELECT fname, lname FROM ticket_users";
$query = mysql_query($sqlq1);

while($row = mysql_fetch_array($query)){
 $fname =  $row['fname']; // you missed the single-quotes
 $lname =  $row['lname'];
echo "<option value ='$fname'>$fname $lname</option>";
}

关于PHP 未正确回显下拉菜单的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29993104/

相关文章:

php - WordPress 错误 : Upload folder is not writable. 导出和文件上传功能将无法运行

html - 我想了解溢出:hidden and display:inline-block is used here的确切原因

java - 使用 Intellij 配置 JPA

Javascript 事件监听器触发 php 代码,反之亦然?

php - Sprintf 重复值

php - curl 和 pcntl_fork()

javascript - 根据用户选择的纸张尺寸打印适合尺寸的 html 表格

javascript - 如何获取类中的上一个/下一个元素

javascript - 当用户在 HTML 文本输入中键入退格键时,如何避免返回导航?

php - 我无法处理 php mysql 登录页面