【发布时间】:2015-11-11 10:32:33
【问题描述】:
我正在尝试创建一个从 SQL 数据库中的表填充的 HMTL 选择框。
这是我的测试代码:
<head>
</head>
<body>
<?php
mysql_connect('localhost', 'root', 'apassword');
mysql_select_db('webforms');
$sql = "SELECT site FROM sites_rcs";
$result = mysql_query($sql);
echo "<select name='sub1'>";
while ($row = mysql_fetch_array($result)) {
echo "<option value '" . $row['site'] ."'>" . $row['site'] ."</option>";
}
echo "</select>"
</body>
当我在网络浏览器中打开此页面时,我得到以下结果:
"; while ($row = mysql_fetch_array($result)) { echo "" . $row['site'] .""; } echo ""
我尝试从互联网上提供的各种示例中重写代码: https://www.youtube.com/watch?v=IVl5GPpMJsY http://www.yourwebskills.com/mysqldropdown.php
当我在 phpMyAdmin 中运行查询 SELECT site FROM sites_rcs 时,它会返回列表中的值。
有什么想法吗?
【问题讨论】:
-
<?php没有结束标记。在</body>之前添加它?>。并将echo "</select>"更改为echo "</select>"; -
多个语法错误...在您的
echo "</select>"中缺少关闭;并且您也没有关闭您的php,请在最后一个回显之后添加?>。 -
请不要使用
mysql_数据库扩展,它们已被弃用(在 PHP7 中永远消失了)特别是如果您只是学习 PHP,请花精力学习PDO或mysqli_数据库扩展, and here is why -
你在
echo "</select>"之后缺少一个分号,同时关闭 php 代码?>最后也许你正在尝试使用 mysql_fetch_assoc 作为关联数组结果。 -
如果这个脚本的文件扩展名不是
.php,那么把它改成.php,apache会将php代码发送给php解释器编译执行
标签: php html mysql select drop-down-menu