2014-12-18 2 views
0

Я использую Bootstrap 3 для разработки проекта im, над которым работает, и до сих пор он работал чудесами и не мог по-настоящему его винить. Однако я столкнулся с проблемой, с которой, по-видимому, я склоняюсь.Кнопка ввода не работает с использованием Bootstrap

Задача: Базовая кнопка ввода ввода не делает ничего, но при запуске на собственной странице, то есть без загрузки, она работает нормально.

Вот код:

<section> 
    <div class="container"> 
     <div class="col-md-6"> 

      <?php 
       // define variables and set to empty values 
       $name = $email = $gender = $comment = $website = ""; 

       if ($_SERVER["REQUEST_METHOD"] == "POST") { 
        $name = test_input($_POST["name"]); 
        $email = test_input($_POST["email"]); 
        $message = test_input($_POST["message"]); 
       } 

       function test_input($data) { 
        $data = trim($data); 
        $data = stripslashes($data); 
        $data = htmlspecialchars($data); 
        return $data; 
       } 
       ?> 

       <h2>PHP Form Validation Example</h2> 
       <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> 
        Name: <input type="text" name="name"> 
        <br><br> 
        E-mail: <input type="text" name="email"> 
        <br><br> 
        Comment: <br> 
        <textarea name="message" rows="5" cols="40"></textarea> 
        <br><br> 
        <input type="submit" name="submit" value="Submit"> 
       </form> 

       <?php 
       echo "<h2>Your Input:</h2>"; 
       echo $name; 
       echo "<br>"; 
       echo $email; 
       echo "<br>"; 
       echo $comment; 
      ?> 

     </div> 
    </div> 
</section> 

Если вам нужно взглянуть на это работает на странице с другим содержанием вы можете сделать это here

Также я планирую получить эту работу как контактную форму, но независимо от того, какой код PHP я ставил, я все еще получаю эту проблему.

+0

'echo $ message;' not 'echo $ comment;' - ваша форма работала нормально, кроме того, не повторяла сообщение, которое я набрал. –

+0

Я получаю эти ошибки в консоли: ТипError: $ (...). Offset (...) undefined agency.js: 12: 23 ТипError: firstName undefined contact_me.js: 17: 0 –

+1

@TimLewis I «Не уверен, что это просто ваше соединение, или если он исправил ошибки, но сайт сразу загрузился для меня. – Script47

ответ

1

У вас есть этот код в contact_me.js, что это вызывает вопрос:

8. submitSuccess: function($form, event) { 
9.  event.preventDefault(); // prevent default submit behaviour 
10. // get values from FORM 
11. var name = $("input#name").val(); 
... 
15. var firstName = name; // For Success/Failure Message 
16. // Check for white space in name for Success/Fail message 
17. if (firstName.indexOf(' ') >= 0) { 
18.  firstName = name.split(' ').slice(0, -1).join(' '); 
... 

Консоль возвращает ошибку:

TypeError: firstName is undefined 

Я думаю, вы выбираете имя неправильно. Попытайтесь использовать:

var name = $("input[name=name]").val(); 
0

То, что я хотел бы предложить вам сделать это в вашей форме оставить получить избавиться от действия = «» то в коде PHP, прежде всего переменных чистки и отображение происходит добавить следующий код:

if (isset($_POST['submit'])) { 
    // Clean input, validate input. Then below output the form data. 
} 

В основном, что этот код делает это, проверяет, нажата ли форма отправки и как форма указана как POST, она проверяет. Он будет очищаться и отображаться только при нажатии кнопки отправки. Попытайтесь это и скажите мне, как это происходит. Вы можете смутить, почему я положил submit в POST, потому что ваша кнопка отправки получила имя = «отправить», поэтому вы используете это имя. Если вы изменили его на name = "contactUs", вы бы сделали isset ($ _ POST ['contactUs']).

EDIT:

Я написал простой пример, и он работает, когда выполняется, вам нужно адаптировать его под свой код.

<section> 
    <div class="container"> 
    <div class="col-md-6"> 

      <?php 
       function test_input($data) { 
        $data = trim($data); 
        $data = stripslashes($data); 
        $data = htmlspecialchars($data); 
        return $data; 
       } 
      ?> 

      <h2>PHP Form Validation Example</h2> 
      <form method="post"> 
       Name: <input type="text" name="name"> 
       <br><br> 
       E-mail: <input type="text" name="email"> 
       <br><br> 
       Comment: <br> 
       <textarea name="message" rows="5" cols="40"></textarea> 
       <br><br> 
       <input type="submit" name="submit" value="Submit"> 
      </form> 
      <?php 
      if (isset($_POST['submit'])) { 
       $name = test_input($_POST['name']); 
       $email = test_input($_POST['email']); 
       $comment = test_input($_POST['message']); 

       echo $name . " - " . $email . " - " . $comment . " - "; 
      } 
      ?> 
    </div> 
</div> 
</section>