使用php和ajax注册和登录页面时遇到困难

时间:2018-01-19 11:07:38

标签: javascript php jquery html ajax

我的代码存在一些问题,需要一些帮助。我正在尝试创建一个注册表单,用户可以输入用户名和密码进行注册。我想使用ajax,但是当我加入它时,它似乎不起作用。为了测试它,我已经回显了"hi from php"但是当我点击注册时没有填写任何字段时它在浏览器中显示。下面的文档名称被称为

  • 的index.php
  • register.js
  • register.php

JS

$(document).ready(function(){
    $("#register").click(function(){
        var user = $("#username").val();
        var pass = $("#password").val();


        var data = "user=" + user + "&pass=" + pass;

            $.ajax({
                method: "post",
                url: "register.php?",
                data: data,
                success: function(data)
                {

                    $("#register_output").html(data);
                }

        }); 
    }); 
}); 

HTML

<!DOCTYPE html>
<html>
    <head>
        <title>Registration</title>
        <script src="jquery-3.2.1.min.js"></script>
        <script src="register.js"></script>
    </head>
    <body>
    <div>
        <h1>Register</h1>

        <p>use the form below to register</p>

        <p>
        <div id="register_output"></div>
        </p>

        <p><strong>Username</strong></p>

        <p><input id="username" type="text" placeholder="Username"></p>

        <p><strong>Password</strong></p>

        <p><input id="password" type="password"></p>

        <p><button id="register">Register</button></p>

    </div>
    </body>
</html>

PHP

<?php
echo "hi from php";
?>

这是我关注的视频https://www.youtube.com/watch?v=iSLm4NlMkvo&t

1 个答案:

答案 0 :(得分:1)

1 - 你有一个return语句停止继续执行该功能,如果删除它,它应该可以正常工作。

2 - 您也可能遇到错误,请务必查看开发人员工具,然后添加.fail函数来处理错误,例如404503 HTTP错误。

3 - 确保在您的网址开头包含协议https://http://

这是一个例子

html / jquery:

<form id='register'>
<div id='response'></div>
<input name='name' placeholder='name' />
<input name='password' placeholder='password' />
<button id='button' onclick="register();"> submit</button>
</form>
<!-- import jquery here -->
<script>
function register() {
var data = new FormData($('#register'));
$.ajax({
  method: "POST",
  url: "http://example.org/register.php",
  data: data
})
  .done(function(html) {
    $( "#response" ).append( html );
  })
  .fail(function(html) {
    alert( "error" );
  });
      return false;
}

</script>

register.php

 <?php
   // do something here
   print_r($_REQUEST);

 ?>

<强>更新

我开始明白您正在尝试通过文件查看c:/path/to/your/file.html发送XHR请求,但您无法做到!你需要一台服务器并不难,首先要做的是安装xampp并将你的文件放在c:/xampp/htdocs/test/中,你应该可以这样做,但如果你已经使用xampp或更简单工具答案在上面