Php 如何获取用户选择的选项?

Php 如何获取用户选择的选项?,php,html,mysql,select,selection,Php,Html,Mysql,Select,Selection,我想获得用户选择的选项以及的“值”存储在他的帐户中(我有一个MySQL注册系统) 我做了表格,一切正常,用户名工作正常,密码工作正常,但我在选择部分卡住了: <td>team:</td> <td> <select name="teamlist" form="regform"> <option value="AstraGiu">Astra Giurgiu</option> <opt

我想获得用户选择的选项以及
的“值”存储在他的帐户中(我有一个MySQL注册系统)

我做了表格,一切正常,用户名工作正常,密码工作正常,但我在选择部分卡住了:

<td>team:</td>
<td>
    <select name="teamlist" form="regform">
        <option value="AstraGiu">Astra Giurgiu</option>
        <option value="FCBotosani">FC Botosani</option>
        <option value="FCBrasov">FC Brasov</option>
        <option value="CeahlaulPN">Ceahlaul Piatra Neamt</option>
        <option value="CFRCluj">CFR Cluj</option>
        <option value="DinamoBuc">Dinamo Bucuresti</option>
        <option value="FarulCta">Farul Constanta</option>
        <option value="GazMetanM">Gaz Metan Medias</option>
        <option value="OtelulGal">Otelul Galati</option>
        <option value="PanduriiTgJiu">Pandurii Targu-Jiu</option>
        <option value="PetrolulPlo">Petrolul Ploiesti</option>
        <option value="RapidBuc">Rapid Bucuresti</option>
        <option value="SteauaBuc">Steaua Bucuresti</option>
        <option value="UCluj">Universitatea Cluj</option>
        <option value="UCraiova">Universitatea Craiova</option>
        <option value="UTAArad">UTA Arad</option>
        <option value="FCVaslui">FC Vaslui</option>
    </select>
</td>
团队:
阿斯特拉吉乌古酒店
博托萨尼足球俱乐部
布拉索夫
皮亚特拉山酒店
克卢日
比库雷斯蒂恐龙
法乌尔
加斯梅登
加拉茨钢铁
潘杜里塔尔古酒
普洛耶什蒂
快速口腔溃疡
布加勒斯特星
大学俱乐部
克雷奥瓦大学
乌塔阿拉德
瓦斯卢伊
在用户输入用户名、通过并选择团队后,我制作了此按钮

<td colspan="2" align="right"><input type="submit" name="submit" value="register"/></td>

如果这对你有帮助的话,我就这样储存

<?php
    if (isset($_POST['submit'])) {
        $username = secure('username');
        $password = md5($_POST['password']);
        $team = secure('team');

        if (empty($_POST['username'])) {
            echo "The username field is empty.";
        } else {
            if (empty($_POST['password'])) {
                echo "The password field is empty.";
            } else {
                if (empty($_POST['team'])) {
                    echo "The team field is empty.";
                } else {
                    $query = mysql_query("SELECT * FROM `users` WHERE `username` = '". $username ."'") or die(mysql_error());
                    if(mysql_num_rows($query) == 1){
                        echo "The username already exists.";    
                    } else {
                        $query = mysql_query("INSERT INTO `users` VALUES(NULL, '". $username ."', '". $password ."', '". team ."')") or die(mysql_error());
                        echo "Successfully registered.";
                    }
                }
            }
        }
    }
?>
你试过这个吗

$\u发布['teamlist']

我假设您的
secure
函数接受表单元素的名称,因此您可以更改此行:

$team = secure('teamlist');
改变这一点:

if (empty($_POST['teamlist'])) {
    echo "The team field is empty.";
}

虽然我在您的验证中看到您订阅了

,但请格式化您的代码,使其不完全在那里…使用print\r($\u POST)查看POST请求中的值。在数据库中,“team”是否应该是“VARCHAR”?是的,您的值结构方式是这样的。如果您计划在数据库的表中表示团队,那么您可能应该重新构造输出团队的方式(从db查询团队,在while循环中迭代结果),然后可以使用主键作为值,该值可以是整数。在这种情况下,该表将有一个整数外键。实际上,您的值是字符串,因此数据库将存储一个varchar。非常感谢。我差不多做完了,我明白你的答案。但是你所说的不是
$\u POST['teamlist']
是什么意思?这应该是表单的操作还是什么?这将是您在表单处理程序中引用用户选择的团队的方式。它基于您在select元素中使用
teamlist
作为name属性这一事实。您的原始代码使用了
$\u POST['team']
。我们开始吧!它起作用了。非常感谢,我没想到这个问题能这么快解决。再次感谢!