PHP-无法从下拉菜单中的DB访问数据

时间:2017-06-07 16:49:21

标签: php

我正在尝试创建一个下拉菜单,该菜单将显示项目名称在数据库中的项目项目中显示的所有项目测试...创建了下拉列表,但它没有访问数据库并检索所需的数据。 .. 代码如下:

<html>
<head>
<title>Dynamic Drop Down List</title>
</head>

    <form id="form1" name="form1" method="post" action="<?php echo $PHP_SELF; ?>">
        Project List :
        <select Project Name='NEW'>
        <option value="">--- Select ---</option>
        <?
            $serverName = "Swagatha-PC"; 
            $connectionInfo = array( "Database"=>"Testing");
            $conn = sqlsrv_connect( $serverName, $connectionInfo);

            if( $conn ) 
            {
            echo "Connection established.<br />";
            }
            else
            {
            echo "Connection could not be established.<br />";
            die( print_r( sqlsrv_errors(), true));
            }
            if (isset ($select)&&$select!="")
            {
            $select=$_POST ['NEW'];
        }
        ?>
        <?
            $query=mysql_query("select ProjectName from dbo.Project");
            $menu=" ";
            while($row = sqlsrv_fetch_array($query))
            {
               $menu ="<option>" . $row["ProjectName"] . "</option>";
            }


            ?>
        </select>
        <input type="submit" name="Next" value="Select" />
    </form>
</body>
</html>

Dropdown Error

我该怎么做才能解决这个问题?

2 个答案:

答案 0 :(得分:1)

解决方案是

while($row = sqlsrv_fetch_array($query))
{
   echo "<option>" . $row["ProjectName"] . "</option>";
}

请参阅?您使用echo输出数据,而不是将数据分配给变量。

正如@FirstOne注意到mysql_query使用sqlsrv_connect时也是错误。我希望这只是你的错字:

$query=sqlsrv_query($conn, "select ProjectName from dbo.Project");

作为另一个旁注

if (isset ($select)&&$select!="")
{
    $select=$_POST ['NEW'];
}

if始终为false,因为您检查$select,然后定义。肯定应该是:

if (isset($_POST['NEW']) && $_POST['NEW'] != "")
{
    $select = $_POST['NEW'];
}

答案 1 :(得分:0)

这是你固定的代码。你可以尝试一下

<html>
<head>
<title>Dynamic Drop Down List</title>
</head>

    <form id="form1" name="form1" method="post" action="<?php echo $PHP_SELF; ?>">
        Project List :
        <select Project Name='NEW'>
        <option value="">--- Select ---</option>
        <?php
            $serverName = "Swagatha-PC"; 
            $connectionInfo = array( "Database"=>"Testing");
            $conn = sqlsrv_connect( $serverName, $connectionInfo);

            if( $conn ) 
            {
            echo "Connection established.<br />";
            }
            else
            {
            echo "Connection could not be established.<br />";
            die( print_r( sqlsrv_errors(), true));
            }
            if (isset ($select)&&$select!="")
            {
            $select=$_POST ['NEW'];
        }


            $query=sqlsrv_query("select ProjectName from dbo.Project");
            $menu=" ";
            while($row = sqlsrv_fetch_array($query))
            {
               echo "<option>" . $row["ProjectName"] . "</option>";
            }


            ?>
        </select>
        <input type="submit" name="Next" value="Select" />
    </form>
</body>
</html>