2013-09-30 6 views
0

Привет, мне интересно, возможно ли это? Имея две разные формы на одной странице, используя почту jquery, чтобы отправить ее php, чтобы выполнить некоторую проверку. Первая из них работает безупречно, однако, когда я перехожу во вторую форму, я получаю сообщение об ошибке, указав, что это неопределенная переменная, но я использую тот же самый метод, который я использовал для первой формы. Он загрузит все, что будет отображаться на 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

'show' является функцией (х2), и' $ feedme' должно быть '# feedme'. Исправьте эти три вопроса и посмотрите, что произойдет. –

+0

Спасибо, человек! Починил это! – user2701687

+0

@ user2701687 Я отредактировал ваш заголовок. 'RESOLVED' зарезервирован для тех случаев, когда вы принимаете ответ, и автоматически присваивается при его принятии, что здесь не так. –

ответ

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

должно быть

$('#feedme').html(result).show(); 
Смежные вопросы