1

ユーザーがパスワードをリセットするための次のフォームがあります。これは、ルート ディレクトリにあるファイル forget.php 内にあります。

<form id="pass_form" action="" method="post" name="pass_form">
  <label>Username:</label>
  <input type="text" class="blank" name="name" id="name" value="Trader Username" data-default="Trader Username" data-message="Please enter your username..."> *<br>
  <input class="sub-btn" type="submit" value="Submit">
</form>

ユーザー名を inc/sendreset.php に投稿したいので、js/scripts.js に次の Ajax があります。

    $("#pass_form").validator({
    offset: [0, 354],
    position: 'center left',
    messageClass: 'conerror'
}).submit(function(e) {
    if (!e.isDefaultPrevented()) {
        var form = $(this);
        var serdata = form.serialize();
        $.ajax({
            type: "POST",
            url: "sendreset",
            data: serdata,
            cache: false,
            success: function (html) {
                log('inside ajax sendreset', this, arguments);
                $('#pass_form').fadeOut(400,function(){
                    if (html=="0") {

                    } else {
                        $('#pass_form').html('<p>The password reset instructions have been sent. Please check your email.</p>');
                    }
                    $('#pass_form').fadeIn();
                });
            },
            error: function (err) {
                log('error inside ajax sendreset', this, arguments);
            }
        });
        //$('#pass_form').fadeOut(400);
        e.preventDefault();
    }
});

ただし、ユーザー名をファイルに投稿していないようです。inc/sendreset.php は次のとおりです。

<?php
        require_once('./library.php');
        require_once('./PHPMailer/class.phpmailer.php');

        $Trader = new CompanyTrader();

        $resetdata = $Trader->resetTrader($_POST['name']);
        print_arr($resetdata);

        //more php which isn't relevant
?>

ファイル inc/sendreset.php は、ファイルが $_GET['name'] を使用し、 inc/sendreset.php?name=username を使用すると、関連するユーザーの配列が返されることを知っています。ただし、Ajax を使用すると、forged.php からは機能しません。助けてください!

4

1 に答える 1

0

私は本当にこれが間違っていると思います:

url: "sendreset",

次のような相対または絶対URLで試してくださいhttp://mysite.com

于 2012-12-26T23:10:31.577 に答える