1

我是 php 新手,所以我在创建我想要的东西时遇到了一些问题

我将首先解释我需要什么.. 有会议,每个会议都有一个审稿人和作者名单。

我已经创建了一个下拉列表,用户可以在其中选择哪个会议...我想在单击提交后显示该会议中的审稿人和作者的列表。

那是我的代码

<?php
$con = mysql_connect("localhost:3306","root","");
mysql_select_db("messaging_dd", $con);
$sql_drop = "SELECT conference_ID,conference_name FROM Conferences";
$drop_result = mysql_query($sql_drop,$con) or die(mysql_error());
$num_rows = mysql_num_rows($drop_result) or die(mysql_error());
mysql_close($con);
?>

<form name="choose" action="savedata.php" method="POST">
    <br />
    Conference: <select name="conference">
        <?php
        for($i=0 ; $i<$num_rows ; $i++)
        {
            $idofconference = mysql_result($drop_result,$i,0);
            $nameofconference = mysql_result($drop_result,$i,1);
            echo '<option value=" '.$idofconference.' ">'.$nameofconference.'</option>';
        }
        ?>        
    </select> 
    <br />
    <input type="submit" value="submit" name="submit" />

</form>
4

5 回答 5

2

尝试这个,

$conf_id = $_POST['conference'];

$con = mysql_connect("localhost:3306","root","");
mysql_select_db("messaging_dd", $con);
$sql = "SELECT review, author FROM Reviews WHERE conf_id = ".$conf_id;
$review_list = mysql_query($sql,$con) or die(mysql_error());
mysql_close($con);

或者你可以选择 Ajax。更新您的搜索结果,无需重新加载整个页面。Ajax 参考:http ://www.w3schools.com/php/php_ajax_database.asp

于 2012-04-16T08:47:31.570 回答
1

我认为你应该试试这个。

<form name="choose" action="savedata.php" method="POST">
    <br />
    Conference: <select name="conference">
        <?php
        while($row=mysql_fetch_array($drop_result)
        {
            echo '<option value=" '.$idofconference.' ">'.$nameofconference.'</option>';

        }
        ?>        
    </select> 
于 2013-02-21T06:45:29.550 回答
1

所有提交的数据都以数组的形式存储在$_POST变量中。您的会议 ID 将$_POST['conference']与您选择的元素的名称相同conference

另一种方法是通过AJAX 请求加载所需的数据(审阅者和作者) ,这样您网站的查看者就不会离开网页。

于 2012-04-16T08:38:27.907 回答
1

它与您所做的类似,只需添加如下会议 ID 详细信息:

$sql = "SELECT reviewer, author FROM Conferences where conference_ID = " . $_POST['conference'];
于 2012-04-16T08:44:48.263 回答
1

在你的文件savedata.php中,你可以把

$whatever = $_POST['conference']

$_POST是 php 中为系统数据保留的几个数组之一,例如,您可以调用 $_server 以查找有关服务器的详细信息(例如服务器上的时间)

您还可以将 method='POST' 更改为 method='GET' ,它将位于 GET 数组中

$whatever = $_GET['conference']

这有点不安全,但如果这不是优先事项,则值得考虑

于 2012-04-16T08:46:10.643 回答