0

好的,所以我编写了这段代码,引用了各种网站。我正在尝试为网站编写注册页面。html 表单如何连接到 PHP/我如何连接它?

我知道我搞砸的一个地方是表单中的 action="" 。不同的网站告诉我要放入不同的东西,从服务器名称(“localhost”)到“”到 php 所在的文件的名称(如果那样的话,我想在与表单相同的文件中进行操作)是可能的,我尝试了这两个文件和一个单独的文件)。我在里面放了什么,所以当点击提交时,它会在与表单相同的屏幕上给出错误消息,当点击提交并且没有错误消息时,它会继续吗?我在哪里链接它继续的页面?

另外,请告诉我我的任何代码是否已被弃用。我一直在尝试检查所有内容,但我可能会错过一些东西。

<?php
include 'connect.php';


//if submit is clicked
if (isset($_POST['submit'])) {
    //then check if all fields are filled
    if (!$_POST['username'] | !$_POST['password'] | !$_POST['firstname'] | !$_POST['MI'] | !$_POST['lastname'] | !$_POST['email'] | !$_POST['phonenumber'] | !$_POST['country'] ) {
        die('You did not complete all of the required fields'); }

    $usernamesquery = mysql_query("SELECT * FROM logins WHERE username='$usernametest'");
    if(mysqli_stmt_num_rows($usernamesquery) > 0) {
        die('This username is already taken.');
    }


}

?>
<form action="????????" method="post">

Username: <input type="text" name="username" maxlength="30"><br>
Password: <input type="password" name="password" maxlength="30"><br>
First Name: <input type="text" name="firstname" maxlength="30"><br>
Middle Initial: <input type="password" name="MI" maxlength="30"><br>
Last Name: <input type="text" name="lastname" maxlength="30"><br>
Email: <input type="password" name="email" maxlength="50"><br>
Phone Number: <input type="text" name="phonenumber" maxlength="11"><br>
Country: <input type="password" name="country" maxlength="40"><br>
<input type="submit">
</form>
4

3 回答 3

1

如果您希望它指向同一个文件,那么只需使用:

<form action="" method="POST">

也没有,$_POST["submit"]因为您没有为提交按钮命名。

<input type="submit" name="submit">

此外,它$usernametest实际上包含任何东西吗?由于您没有在上面的代码中给它一个值。

于 2013-08-02T09:03:07.257 回答
1

“动作”是带有一些脚本的页面,它解析表单数据并进行登录。

例如:表单有动作“login.php”,这意味着在您提交表单后,数据将发送到“login.php”,您可以通过$_POST变量访问它。如果你在同一个文件中有登录逻辑和表单,你不必设置任何动作,这样就可以了

<form action="" method="POST">

更多信息在这里

于 2013-08-02T09:05:31.030 回答
0

如果您想将表单提交到同一页面(您已经准备好使用的 URL),您可以省略标签中action的。<from>否则,您指定表单需要提交到的 URL(相对或绝对)。

于 2013-08-02T09:03:41.420 回答