2013-05-16 4 views
-1

Я получил HTML страницу с 2 формами, которые используют один и тот же скрипт ..предупреждающее сообщение не будет отображаться

<?php 

    if ($conn) { 
     if (isset($_POST['form_student'])) { 
      if ($_POST['form_student'] == 'Send') { 
       if (!empty($_POST["Ime"]) && !empty($_POST["Prezime"]) && !empty($_POST["BrojIndeksa"]) && !empty($_POST["TipNastave"])) { 
        header('Location: forme.html'); 
        echo "<script>alert('Processing data to sql.');</script>"; 
       } else { 
        echo 'You didnt fill all fields!'; 
        echo "<script>alert('You didn't fill all fields!');</script>"; 
       } 
      } 
     } 
     if (isset($_POST['form_subject'])) { 
      if ($_POST['form_subject'] == 'Send') { 
       // same checks just like above with redirecting 
       // and displaying alert box 
      } 
     } 
    } 

?> 

Первая проблема, когда я не заполнять все поля, он делает работу и echo 'Вы не заполнили поля! но не отображает сообщение в поле предупреждения, и оно не работает, когда я не заполняю все поля. И мне интересно, как я могу на самом деле обработать php-скрипт, не перенаправляя на эту страницу php-скрипта, показать окно msg на странице html, возможно ли это с помощью ajax или jquery, или я должен вместо этого использовать изменение расширения html в php и делать все проверки там и избегать обработки скрипта в action = ""?

+0

Вы получаете _Вы не заполнили все поля! _? –

+1

'echo' после' header'? : O –

+0

Возможный дубликат [PHP: дать предупреждение всплывающее затем перенаправить страницу] (http://stackoverflow.com/questions/11703854/php-give-alert-popup-then-redirect-the-page) – epascarello

ответ

0

Это из-за ряда ..

эхо "предупреждение ('Вы не заполнили все поля!');";

Попробуйте это вместо ..

эхо "предупреждение (\" Вы не заполнили все поля! \ ");";

Что вы сделали неправильно, так это то, что у вас был апостроф в строке и вокруг строки. Я не знаю, как это объяснить, но я просто сделал две кавычки, чтобы не конфликтовать с эхом php.

Update:

Что касается второго вопроса о перенаправлении и тому подобное. Не могли бы вы объяснить это дальше, потому что я не понимаю ни слова?

+0

Спасибо за предупреждение echo "(\" Вы не заполнили все поля! \ ");"; он работает, но теперь остается только проблема, как я могу на странице html, где я обрабатываю скрипт, отображать echo «»; так что он не перенаправляет меня на script.php и показывает предупреждение там .. - –

+0

Когда он перенаправляет вас на script.php? Код, который вы указали нам для кода script.php? –

+0

Ну, он перенаправляет, когда я отправляю, потому что я обрабатываю script.php в атрибут action = "script.php", и, конечно же, он проверяет, что он должен проверять на этой форме, и что на самом деле происходит, перенаправляет меня на скрипт .php, который фактически не содержит ничего, кроме скрипта php, который проверяет формы и как окно с сообщением о представлении результата, для которого я ожидаю, что вы каким-то образом будете отображаться на той же странице html. Должен ли я вместо этого использовать php exe вместо html, а вместе со всеми html-тегами добавить эти проверки перед формой или как это происходит .. для достижения эффекта ..? –

Смежные вопросы