将选定的值从下拉列表存储到php中的变量

时间:2013-03-28 07:49:40

标签: php mysql drop-down-menu

我使用网页中数据库的值填充了一个下拉列表。我使用 MySQL 数据库和 PHP 进行编码,使用 HTML 进行设计。现在,如果我从下拉列表中选择一个值并提交它,我希望将所选值存储在一个新变量中。我将再次将变量传输到新的网页。 我尝试使用 $ _ GET $ _ REQUEST 代码执行此操作,但这些代码都不起作用。请建议我解决方案。

以下是代码:

下拉列表的PHP和HTML代码:

<?php
$yearval=$_GET['year'];
$classval=$_GET['class'];
$semesterval=$_GET['semester'];
mysql_connect("localhost","root",""); // (host, username, password)
mysql_select_db("digint") or die("Unable to select database"); //select db
?>
<table width="500" border="1" align="center" cellpadding="0" cellspacing="1">
<tr>
<td>SELECT YOUR SUBJECT AND ENTER THE SUBJECT ACCESS CODE</td>
<table width="400" border="1" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<form method="post" action="accesscheck.php">
<tr>
<td>Select Subject</td>
<td>
<?php
//Subject selection
$result = mysql_query("select DISTINCT subject from accessindex where semester=$semesterval");
echo '<select id="subject" name="subject"><OPTION>';
echo "Select a subject</OPTION>";
while ($row = mysql_fetch_array($result)){
$subject = $row["subject"];
echo "<OPTION value=\"$subject\">$subject</OPTION>";
}
echo '</SELECT>';
?>
</td>
</tr>
<tr>
<td width="78">AccessKey</td>
<td width="294"><input name="myaccesskey" type="password" id="myaccesskey"></td>
</tr>
<td>
<input type="submit" name="AccessCheck" value="Submit">
</td>
</tr>
</body>
</html>

使用所选值的PHP代码:

<?php
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

$myaccesskey=$_POST['myaccesskey']; 
$subjectval=$_POST['subject'];

$myaccesskey = stripslashes($myaccesskey);
$myaccesskey = mysql_real_escape_string($myaccesskey);
$subjectval = stripslashes($subjectval);
$subjectval = mysql_real_escape_string($subjectval);
$sql="SELECT accesskey FROM accessindex WHERE accesskey='$myaccesskey' and subject=$subjectval";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){
header("location:marksentry.php");
}
else {
echo "Wrong Subject Access Key";
}

1 个答案:

答案 0 :(得分:1)

提交后,您可以使用您使用的方法GETPOST

获取选择下拉列表的值

$select_val = $_POST['subject'];

选择$_POST['subject']的位置下拉值,subject是下拉列表的名称

试试这个

<?php
//Subject selection
$result = mysql_query("select DISTINCT subject from accessindex where semester=$semesterval");
echo '<form method="POST" action="new_webpage_action.php">';
echo '<select id="subject" name="subject"><OPTION>';
echo "Select a subject</OPTION>";
while ($row = mysql_fetch_array($result)){
$subject = $row["subject"];
echo "<OPTION value=\"$subject\">$subject</OPTION>";
}
echo '</SELECT>';
echo '<input type="submit" name="submit" value="submit"/>';
echo '</form>';
?>