【问题标题】:how to get the value attribute of a drop down list <option> and use it in php code如何获取下拉列表 <option> 的 value 属性并在 php 代码中使用它
【发布时间】:2011-10-01 05:49:24
【问题描述】:

我有一个从 MySQL 数据库动态填充的下拉列表:

<select name= "studentnames" >
<option value="0">Select a Student</option>

$RSStudentName = mysql_query( "SELECT StudentName, StudentID FROM Students " );

while($StudentNameList = mysql_fetch_object($RStudentName))
    {
    <option value = "<?php echo $StudentNameList->StudentID ;?> " >

    <?php 
        echo $StudentNameList->StudentName ;
     ?>
    </option>       
<?php 
    }
?>
</select>

下拉列表填充这些项目如下:

学生 1

学生2

学生3

学生4


学生表如下:

SID |名字

S001 |学生1

S002 |学生2

S003 |学生3

现在,当用户从下拉列表中选择学生姓名时,我想获取该选项的值,并将其插入表中。如何做到这一点?

也就是说,如果用户在下拉列表中选择Student3,那么我想在某个变量中获取S003 并将其插入表中?请帮助如何获取变量中的值属性。

这样可以吗?

$sid = $_POST('studentnames').value;

【问题讨论】:

  • 他们提交表格了吗?或者当有人选择一个学生时,它应该做一个插入?万一他们不小心选错了学生,又改了怎么办?
  • 您正在覆盖您的结果集。使用不同的变量名称(例如,$result 用于结果集)。
  • 是的,在提交表单时,我会插入值.......
  • 页面上没有插入事务?我对您的问题感到困惑,您要将数据插入到哪个表中?
  • @Liam : 我只想知道,如何在下拉列表中获取所选项目的价值属性?

标签: php mysql drop-down-menu get


【解决方案1】:

如果是简单的表单帖子:所选值将在:

$_POST['studentnames']

在您的代码中,将 ID 用作 VALUE,将名称用作文本

<option value="[id field]">[studentname]</option>

然后

$_POST['studentnames']

将包含 is,可能比简单地命名为“学生”更好......

【讨论】:

  • 先生,但这会给我 StudentName,但我想获取 STUDENTID?喜欢用户选择Student3,然后我想在某个变量中获取其对应的ID S003?
【解决方案2】:

您的表单标签应该有一个method="post" 属性。然后您可以使用以下方式访问数据:

$value = $_POST['studentnames'];

请记住,接受原始 $_POST 数据会使您的项目面临各种注入安全问题。确保在数据靠近数据库或显示回用户之前清理并验证数据。

【讨论】:

  • 先生,但这会给我 StudentName,但我想获取 STUDENTID?喜欢用户选择Student3,然后我想在某个变量中获取其对应的ID S003?
  • 它应该给你ID。您是否检查过 HTML 的源代码以查看 select 元素的结构是否正确?如果选项值不存在或格式不正确,它只会为您提供 StudentName。
  • 好的先生,非常感谢,另外,如果我想获取下拉菜单中显示的文本,那我该怎么办???????比如,如果用户选择 Student3,那么我如何在某个变量中获取 Student3???????
  • 好的先生,非常感谢,另外,如果我想获取下拉菜单中显示的文本,那我该怎么办???????比如,如果用户选择Student3,那么我如何在某个变量中获得'Student3'???????
  • 除非省略 value 参数,否则真正获取选项内容的唯一方法是使用 javascript。
【解决方案3】:

用表单发布,得到如下值:

<?php

$somevariable = $_POST["studentnames"];

?>

【讨论】:

  • 如果我想获取下拉菜单中显示的文本,那我该怎么办??????比如,如果用户选择 Student3,那么我如何在某个变量中获得“Student3”?????? ——
  • 从数据库中获取: $query = mysql_query("SELECT StudentName FROM Students WHERE StudentID = ".intval($studentid)); $studentName = mysql_result($query,0);
【解决方案4】:
$Getname = $_POST['studentnames'];

这会获取用户选择的值

那么 sql 应该是这样的

$query = "INSERT INTO Members (studentnames)VALUES('$Getname')"; $result = mysql_query($query);

该 SQL 会将 $Getname 添加到 Members 表中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多