1

我从这个网站得到了很好的提示,但现在真的很挣扎,需要一些专家的帮助,我正在学习,所以请友好:-) 无论如何,我有一个脚本可以根据用户选择的内容动态更改 3 个下拉菜单,我有一个带有一个表的数据库,我可以查询没有问题(mysql)到目前为止这么好,问题是我似乎无法根据用户从下拉菜单中选择的内容生成结果,我没有看到任何记录,我我什至不确定我是否可以使用带有数字而不是单词的菜单项的查询,即使是一点点帮助,我也将不胜感激,我只需要一点点工作,然后我想我可以管理 = 非常感谢所有人

<?php
// Make a MySQL Connection
mysql_connect("localhost", "", "") or die(mysql_error());
mysql_select_db("travel") or die(mysql_error());


$valid_class = array('4', '6', '7', '1', '5', '3');
$valid_category = array('4.1.9', '4.1.7', '4.1.8', '4.1.6', '4.1.5', 
'4.1.2', '4.1.1', '4.1.10', '4.1.4'' 4.1.3', );

$where = array();
$where[] = 'menuOne = "' . mysql_real_escape_string($_POST['menuOne']) . '"';
;

if (in_array($_POST['menuOne'], $valid_class))
{
$where[] = 'menuOne = "' . $_POST['menuOne'] . '"';
}

if (in_array($_POST['menuTwo'], $valid_category))
{
$where[] = 'menuTwo = "' . $_POST['menuTwo'] . '"';
}
// Retrieve all the data from the "category" table
$result = 'SELECT * FROM records WHERE ' . implode(' AND ', $where);



      if(!isset($result))
{
mysql_affected_rows($result);

}
echo "\n <table border=1 width=100%>";

       echo "\n<tr>" .
             "\n\t<th>ID</th>" .
             "\n\t<th>Name</th>" .
             "\n\t<th>Address</th>" .
             "\n\t<th>Location</th>" .
             "\n\t<th>Email</th>" .
             "\n\t<th>Telephone</th>" .
             "\n\t<th>Website</th>" .
             "\n\t<th>Open Season</th>" .
             "\n\t<th>Destination</th>" .
             "\n\t<th>Categories</th>" .

             "\n</tr>";

       while($row = @ mysql_fetch_array($result)) {

          echo "\n<tr>" .
                "\n\t<td>{$row["ID"]}</td>" .
                "\n\t<td>{$row["Name"]}</td>" .
                "\n\t<td>{$row["Address"]}</td>" .
                "\n\t<td>{$row["Location"]}</td>" .
                "\n\t<td>{$row["Email"]}</td>" .
                "\n\t<td>{$row["Telephone"]}</td>" .
                "\n\t<td>{$row["Website"]}</td>" .
                "\n\t<td>{$row["Open Season"]}</td>" .
                "\n\t<td>{$row["Destination"]}</td>" .
                "\n\t<td>{$row["Categories"]}</td>";

       }
       echo "\n</table>";





?>
4

1 回答 1

0

为了您的mysql查询

$result = 'SELECT * FROM records WHERE ' . implode(' AND ', $where);

要工作,您需要实际发送它。

mysql_query($result)

你目前拥有的

while($row = @ mysql_fetch_array($result)) {

设计为在 msql_query 调用的结果上运行。例如

$query= mysql_query($result);

然后运行

while($row = @ mysql_fetch_array($query)) {

据我所知,这是您唯一的问题,您刚刚忽略了查询。

希望对您有所帮助,请随时询问更多详细信息。

于 2012-04-19T12:47:14.367 回答