0

こんにちは、これが可能かどうか疑問に思っていますか?jquery postを使用して同じページに2つの異なるフォームを配置し、phpを送信してチェックを行います。最初のフォームは問題なく動作しますが、2 番目のフォームに移動すると、未定義の変数であるというエラーが表示されますが、最初のフォームで使用したのとまったく同じ方法を使用しています。フィード フォームの php ページでエコーされたものはすべて読み込まれますが、入力した内容はエコー バックされません。より適切で正しい方法はありますか?

これは実際のサイトではなく、私が取り組んでいるプロジェクトのテストです。

HTML:

<form action="php/signup.php" method="post" class="form-inline" name="signupForm">
    <input type="text" maxlength="20" name="username" id="user_in">
    <input type="password" maxtlength="20" name="password" id="pass_in">
    <input type="submit" name="submit" Value="Sign Up">
</form>
<div id="feedback"></div> <!-- Feedback for Sign Up Form -->
    <br /><br />
<form name="feedForm">
    <input type="text" id="feed_in" name="feed_me_in" placeholder="feed">
    <div id="feedme"></div> <!-- FEEDback for feed form -->
</form>

<script src="js/jquery-1.9.1.js"></script>

JavaScript:

<script>
    $(document).ready(function() {
        $('#feedback').load('php/signup.php').show();
        //SIGN IN FORM
        $('#user_in, #pass_in').keyup(function() {
            $.post('php/signup.php', { username: document.signupForm.username.value,
                                       password: document.signupForm.password.value }, 
                function(result) {
                    $('#feedback').html(result).show
                });
         });

         $('#feedme').load('php/feed.php').show();
         //FEED FORM
         $('#feed_in').keyup(function() {
             $.post('php/feed.php', { feed: document.feedForm.feed_me_in.value },
                  function(result) {
                      $('$feedme').html(result).show
                   });
          });
    });
</script>

フィード フォームの PHP:

<?php
     $feed = mysql_real_escape_string($_POST['feed']);
     if(isset($feed)) {
         echo $feed;
     } else {}
?>

サインアップ フォームの PHP:

<?php
    if(isset($_POST['username'])) {
        include_once('connect.php'); //Connect
        $username = mysql_real_escape_string($_POST['username']);

        $sql1 = "SELECT username FROM users WHERE username='$username'";
        $check = mysql_query($sql1);
        $numrows = mysql_num_rows($check);
        if(strlen($username)<=4) {
            echo "Username is too short";
        } elseif($numrows == 0) {
            echo "Username is available";
        } elseif($numrows > 0) {
            echo "Username is already taken";
        }
    } else {
        echo "Please type a username";
    }
?>
4

1 に答える 1

1
$('$feedme').html(result).show

する必要があります

$('#feedme').html(result).show();
于 2013-09-30T21:12:02.710 に答える