PHP MySQLi到HTML组合框
我试图将数据从MySQL数据库传递到HTML组合框,我正在使用php来实现这一点PHP MySQLi到HTML组合框,php,html,mysqli,combobox,Php,Html,Mysqli,Combobox,我试图将数据从MySQL数据库传递到HTML组合框,我正在使用php来实现这一点 <form method="POST"> <select class="js_inline_input"> <?php $servername = "localhost"; $username = "root"; $password = "";
<form method="POST">
<select class="js_inline_input">
<?php
$servername = "localhost";
$username = "root";
$password = "";
$db = "js_milhoes";
$conn = new mysqli($servername, $username, $password, $db);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}else{
echo "<option> Connected successfully </option>";
}
$sql = "SELECT * FROM js_country";
$result = $conn->query($sql);
while($row=mysqli_fetch_assoc($result)){
//My Personal echo
echo "<option value='".$row['countryCode']."'>".$row['countryName']."</option>";
//Echo i saw on this site
echo "<option value='{$row->countryCode}'>{$row->countryName}</option>";
}
$conn->close();
?>
</select>
</form>
第二个
未显示的原因是您使用了“获取对象”语法$row->column
你需要使用其中一个;不是两者都有
要么你用
while($row=mysqli_fetch_assoc($result)){
echo "<option value='".$row['countryCode']."'>".$row['countryName']."</option>";
}
while($row=mysqli\u fetch\u assoc($result)){
回显“$row['countryName']”;
}
或(并用双引号转义):
while($row=mysqli\u fetch\u object($result)){
回显“{$row->countryCode}”;
}
您还需要注意,当迭代类似的列名时,列名是区分大小写的
这意味着,countryCode
和countryCode
在这里是两种不同的动物,就像countryName
和countryName
一样;如果是这样的话
- 检查查询中的错误
脚注:
您声明:“但显示的是:-来自第一个回显:“.$row['countryName']”。-来自第二个回显:{$row->countryCode}”
我不明白你说的是什么意思。我已经测试了您的代码,它运行良好(除了“fetch object”语法问题)。如果您的意思是看到的是“代码”,而不是被解析,那么您不是在使用Web服务器,就是在以file:///file.php
而不是http://localhost/file.php
或as.html
应为这种情况,因为文件扩展名未知
- 这是我对这个问题的结论
好吧,这是一个愚蠢的问题,当我从wamp 2.5改为wamp 3时,我忘记删除wwamp粘贴,我有2个,因此,我使用了错误的填充,并且因为该填充不在使用apache的服务器中,所以浏览器对php进行了注释我检查了我的代码,并且对部分php进行了注释,我不知道why@JSoares好的,那么我们的问题在哪里?我发布的内容与您发布的代码相关,应该已经解决了这个问题。我不会发布不起作用的答案,我在发布前做了测试。
while($row=mysqli_fetch_object($result)){
echo "<option value=\"{$row->countryCode}\">{$row->countryCode}</option>";
}