0

我有一个sign_up.php包含我的网站注册表单的文件。表单的操作是我的sitesignup.php文件,它应该获取我的表单收集的信息,确保它都是有效且安全的,然后将其发送到我的 SQL 数据库。我遇到的问题是表单元素没有显示在 $_POST 数组中sitesignup.php,只有提交按钮。

有人可以让我了解我做错了什么吗?

文件:用户界面/sign_up.php

<head >
    <link rel="stylesheet" type="text/css" href="user_interface_tables.css">
</head>
<table class="outer">
    <tr>
    <form name="sign_up" method="post" action="user_interface/sitesignup.php">
    <input type="hidden" id="pagereference" value="<?php echo  $_SERVER['PHP_SELF']?>" >
        <td>
        <table class="inner">
            <tr>
                <td colspan="3"><strong>User Registration Form</strong></td>
            </tr>
            <tr>
                <td width="150">First Name <font id="asterisk">*</font></td>
                <td width="6">:</td>                
                <td width="290"><input type="text" id="first_name"></td>                
            </tr>
            <tr>
                <td >Last Name <font id="asterisk">*</font></td>
                <td >:</td>             
                <td ><input type="text" id="last_name"></td>                
            </tr>
            <tr>
                <td >User Name <font id="asterisk">*</font></td>
                <td >:</td>             
                <td "><input type="text" id="user_name"></td>               
            </tr>
            <tr>
                <td >Email<font id="asterisk">*</font></td>
                <td >:</td>             
                <td ><input type="text" id="email"></td>                
            </tr>
            <tr>
                <td >Password<font id="asterisk">*</font></td>
                <td >:</td>             
                <td ><input type="password" id="password1"></td>                
            </tr>
            <tr>
                <td >Confirm Password<font id="asterisk">*</font></td>
                <td >:</td>             
                <td ><input type="password" id="password2"></td>                
            </tr>
            <tr>
                <td >Registration Code</td>
                <td >:</td>             
                <td ><input type="text" id="registration_code"></td>                
            </tr>
            <tr>
                <td colspan="2"><input type="submit"name="submit" ></td>
            </tr>

        </table>
        </td>
    </form>
    </tr>
</table>

文件:用户界面/sitesignup.php

<?php
var_dump($_POST);
?>

输出:array(1) { ["submit"]=> string(6) "Submit" }

4

1 回答 1

0

当我即将发布时,我意识到了这个问题。其他人可以从我的错误中吸取教训,注意我是如何使用 id="blah" 作为表单元素的。

name标签是用于识别表单元素的标签,标签id是我用于CSS的标签,我想我写它的时候并没有想到......

例如:代替

<tr>
    <td >User Name <font id="asterisk">*</font></td>
    <td >:</td>             
    <td "><input type="text" id="user_name"></td>               
</tr>

我会写

<tr>
    <td >User Name <font id="asterisk">*</font></td>
    <td >:</td>             
    <td "><input type="text" name="user_name"></td>             
</tr>

现在我的 var 转储显示了我所有的表单元素:D

array(7) { ["first_name"]=> string(3) "dan" ["last_name"]=> string(3) "dan" ["user_name"]=> string(4) "name" ["email "]=> string(4) "name" ["password1"]=> string(4) "name" ["password2"]=> string(4) "name" ["submit"]=> string(6) “提交” }

于 2013-02-03T19:13:30.593 回答