我有一个很好的数据输入表单,但有人问我是否可以将'name'字段作为用户下拉框而不是必须输入名称并冒着拼写错误 - 是的说得通。 这对我来说是一个新手,并且在这里以及我试图完成第一部分的其他网站上的一些信息之后......填充下拉框.. nope。没有错误,只是框中没有任何内容。 为此,我有tblStaffNames(userID,txtName)
我使用的代码看起来像这样;
<?php
include("connect-db.php");
$queryNames = "SELECT txtName FROM tblStaffName";
$resultNames = $conn->query($queryNames);
?>
<select name="personname">
<?php
while ($rowNames = $resultNames->fetch_assoc()) {
echo "<option value=\"{$rowNames['txtName']}\">";
echo $rowNames['txtName'];
echo "</option>";
}
?>
</select>
$ conn一切都很好,因为在另一个页面上,我可以在数据库的表格中显示数据,包括tblStaffNames - 所以我可以排除任何类型的连接问题。
当我运行页面时,会出现一个小小的下拉框,非常简单,但它就在那里,只是没有值。
我最终会使用像这样的值作为数据输入表单的一部分;
<td><select name="personname" style="width:100px" ><?php echo $RowNames; ?></select></td>
但我实际上无法达到显示数据的程度。
任何人都可以帮我解决我在这里做错的事吗?
答案 0 :(得分:0)
我测试了你的代码稍作修改。这个对我有用。请检查您的数据库连接是否正常,就像我在代码中所做的那样。
<?php
$servername = "localhost";
$username = "user";
$password = "password";
$dbname = "staff_db";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$queryNames = "SELECT txtName FROM tblStaffName";
$resultNames = $conn->query($queryNames);
//Generating the Dropdown
echo "<select name=\"personname\">";
while ($rowNames = $resultNames->fetch_assoc()) {
echo "<option value=\"{$rowNames['txtName']}\">";
echo $rowNames['txtName'];
echo "</option>";
}
echo "</select>";
?>
答案 1 :(得分:-1)
我不知道你的错误是什么,但为了更好地理解我改变了你的代码
$queryNames = "SELECT userID,txtName FROM tblStaffName";
$resultNames = $conn->query($queryNames);
?>
<select name="personname">
<?php
while ($rowNames = $resultNames->fetch_assoc()) {
?>
<option value="<?php echo $rowNames['userID']; ?>">
<?php echo $rowNames['txtName']; ?>
</option>
<?php
}
?>
</select>
答案 2 :(得分:-1)
以下代码段对我有效。
<?php
$servername = "localhost";
$username = "user";
$password = "password";
//DB Server Connection
$conn = mysql_connect($servername, $username, $password) or die("Connection establishment failed");
//DB Selection
$selected = mysql_select_db("staff_db", $conn) or die("Could not select DB");
//Query String
$queryNames = "SELECT txtName FROM tblStaffName";
//Query the DB
$resultNames = mysql_query($queryNames);
//Generating the Dropdown
echo "<select name=\"personname\">";
while ($rowNames = mysql_fetch_array($resultNames)) {
echo "<option value=\"{$rowNames['txtName']}\">";
echo $rowNames['txtName'];
echo "</option>";
}
echo "</select>";
?>