我是一个完整的新手,这是我在其中一个论坛上发表的第一篇文章。所以如果我没有正确解释自己或者不应该问这样的问题,那么请原谅我并尽量对我耐心:)
基本上,我已经建立了一个 mysql 数据库,我可以从我的网站上填充它。我创建了一个基本搜索选项,我想从下拉列表中选择一个选项,并且还可以输入关键字。我已经弄清楚了 hte 关键字部分,我只是对如何处理事物的下拉部分感到有些困惑。我已经在互联网上搜索了答案,但我不确定我是否使用了正确的术语,因此我发现很难解决这个问题。
我之前创建了一个基本的 MYSQL 数据库并使其工作,所以我只能假设问题出在自动填充的下拉列表中。
让我解释一下......我有一个想象性地标题为“Search.php”的搜索页面,其中包含一个由下拉菜单和一个文本框组成的表单(不要担心文本框 - 工作正常),下降下拉框会自动从我的 MYSQL 数据库中填充,当提交表单时,结果应该出现在另一个页面上,标题为“Results.php”。出于某种原因,下拉列表中的值似乎没有被传递到“结果”页面!
这是“搜索”页面的下拉框。
<select name="Name" id="Name">
<option>Please select</option>
<?PHP
while($row = mysql_fetch_assoc($result))
{$dropdown .="\r\n<option value='{$row['Name']}'>{$row['Name']}</option>";}
echo $dropdown;
PHP?>
这一切似乎都很好,它会自动从我的 MYSQL 数据库中填充,我很高兴它能正常工作。
这是“结果”页面。
<?php
mysql_connect('xxxxxxxxxxxx', 'username', 'password') or die(mysql_error());
mysql_select_db("database") or die(mysql_error());
$query = "SELECT * FROM Shirts WHERE Name = '$Name'" or die(mysql_error());
$result = mysql_query($query) or die(mysql_error());
if(mysql_num_rows($result) > 0) {
while($row = mysql_fetch_assoc($result))
{
echo ($row['Name']);
echo "<br />";
}
}
Shirts = 表名 Name = 表中的列
出于某种原因,这只返回我数据库中的“空”字段,这让我相信“搜索”页面上下拉框中的值没有被传递到“结果”页面!