2016-07-08 1 views
1

Я - два файла, файл PHP и другой файл из javascript и HTML.Отображать предупреждение при использовании AJAX

PHP файл:

<?php 
session_start(); //start session 

$_SESSION['data'] = "The content should be displayed as alert in the JS file"; 

JS/HTML файла:

<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script> 
<form class="form-item" id="idForm"> 
     <input type="hidden" name="product_code" value="prince"/> 
     <button id="btn_add" type="submit">Add to Cart</button> 
</form> 
<script> 


    $(function(){ 
     $("#idForm").submit(function(e) { 

      var url = "test2.php"; 

      $.ajax({ 
       type: "POST", 
       url: url, 
       data: $("#idForm").serialize(), 
       success: function() 
       { 
        alert(/*The content of the session in the php file should be display here*/); // show response from the php script. 
       } 
      }); 

      e.preventDefault(); 
     }); 
    }); 
</script> 

В файле PHP, у меня есть сеанс $_SESSION['data']. Все, что я хочу сделать, это возможность отображать содержимое этой сессии в alert() после making the ajax request to test2.php

+2

в 'php' write' echo $ _SESSION ['data']; ', а затем в' ajax': -'success: function (response) {alert (response);} ' –

+0

@Anant done. Извините за задержку – Prince

ответ

4

Добавить ответ как параметр для успеха. Ответ в основном все, что обычно отображается в браузере (в том числе синтаксических ошибок)

$.ajax({ 
      type: "POST", 
      url: url, 
      data: $("#idForm").serialize(), 
      success: function(resp) 
      { 
       alert(resp); // show response from the php script. 
      } 
     }); 

Убедитесь, что повторить то, что вы хотите отобразить в PHP скрипт. Все, что получает отражение будет возвращен в ответ AJAX:

<?php 
session_start(); //start session 

$_SESSION['data'] = "The content should be displayed as alert in the JS file"; 
echo $_SESSION['data']; 
+3

OP также должен отображать переменную сеанса в PHP. –

+0

@JayBlanchard действительно сэр :) –

+0

Спасибо за ваш ответ, он работает хорошо. Как насчет того, если в php-файле я добавлю эту строку кода 'echo $ title;', и я хочу предупредить только '$ title'? – Prince

2

1.In php вы должны написать в прошлом: -

echo $_SESSION['data']; // so that it will go as a response to the ajax call 

2.Then в ajax: -

success: function(response){ // grab the response 
    alert(response); // alert the response 
} 
+0

Спасибо за ваш ответ, он работает хорошо. Как насчет того, если в php-файле я добавлю эту строку кода 'echo $ title;', и я хочу предупредить только '$ title'? – Prince