繁体   English   中英

从下拉菜单将选项存储到数据库中

[英]Store option from drop down menu into database

我的html代码中包含以下表单字段:

<select class="secret_question">
                     <option value ="1">The name of the city where you were born</option>
                     <option value ="2">The name of your first pet</option>
                     <option value ="3">What is your mother's maiden name</option>
                  </select>

问题:如何将选定的选项存储到数据库中。 我已经能够使用以下代码将普通字段(例如名称,email-id)存储到数据库中:

$firstname = $_REQUEST['firstname'];
    $lastname = $_REQUEST['lastname'];
$stmt = $dbh->prepare("INSERT INTO users (firstname,lastname) VALUES ('$firstname', '$lastname')");

我已经为选择列表尝试了相同的技术,但是它给了我"undefined index"错误

如果表单元素不是“ named ”,则会出现undefined index错误。

您需要使用以下方式命名您的<select>

<select class="secret_question" name="secret_question">

然后使用$secret_question = $_REQUEST['secret_question'];

如以下内容:

$firstname = $_REQUEST['firstname'];
$lastname = $_REQUEST['lastname'];
$secret_question = $_REQUEST['secret_question'];
$stmt = $dbh->prepare("INSERT INTO users (firstname,lastname,secret_question) 
VALUES ('" . $firstname . "', '" . $lastname . "', '" . $secret_question . "')");

在命名数据库列secret_question

使用以下约定更安全:

'" . $firstname . "'而不是'$firstname'

但是,您可能想使用输入字段而不是<select>因为人们可能自己输入答案,这取决于您的设置方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM