2014-10-28 80 views
0

我失去了尋找解決方案的途徑,需要立即幫助。我有一個名爲list.php的php頁面,其中顯示了每個產品上帶有購買圖標的產品列表。點擊「購買」按鈕後,它將指向action.php(其中包含要添加到數據庫中的腳本),然後使用標題(位置:list.php?id = $ r [id_product])返回到同一頁面。在返回到list.php後,我想顯示一個彈出消息「產品現在已加入購物車」。怎麼做?PHP-Jquery-AJAX,顯示彈出消息

+0

當回到列表中放置一個屬性或類似header(location:list.php?show = 1) – 2014-10-28 08:28:10

+0

對不起忘了添加。編輯的問題。我已經使用它。 – 2014-10-28 08:30:47

回答

0

你可以你cookie和返回後只檢查是否有指定cookie或沒有,如果有,顯示消息。

但是如果你使用ajax你不需要一個cookie,只需添加彈出功能阿賈克斯解析功能,這樣的事情

function addToBasket(itemId) { 
    var x = new XMLHttpRequest(); 
    x.open('GET', '/ajax/action.php?add=' + itemId, true); 
    x.onreadystatechange = function() { 
     if (x.readyState == 4) && (x.status == "200") { 
      var responseObj = eval('(' + x.responseText + ')'); 
      if (responseObj.status == 0) 
       window.alert('The product successfully added to your basket'); 
      else 
       window.alert('An error has occured during the processing the data. Please try again later'); 
     } 
    }; 
    x.send(null); 

action.php代碼示例

<?php 
    // ... 

    $response = array('status' => 1); 

    if (isset($_GET['itemId'] && $_GET['itemId'] != '') 
    { 
     $item_id = htmlspecialchars($_GET['itemId']); 
     if (is_numeric($item_id) 
     { 
      put_in_table($item_id); 
      $response = array('status' => 0); 
     } 
    } 

    // output an Ajax response 
    header('Content-Type: application/javascript'); 
    echo json_encode($response); 
?> 
+0

我使用http://jsfiddle.net/pX5kr/中的腳本,但仍然無法正常工作。它是相同的還是不同的東西? – 2014-10-28 08:43:39

+0

在我的瀏覽器中顯示的是woking。幾乎相同,就在上面的示例中,您實現了「jquery」結果。在我的例子中,我使用純JavaScript。他們都給出了相同的結果。選擇你想要的東西。 – 2014-10-28 08:48:08

0

創建session或Cookie on action.php

檢查list.php是否顯示彈出窗口

顯示彈出窗口後將其銷燬,所以現在將顯示一次又一次。

0

你在標題中提到了ajax,那麼爲什麼你不使用ajax來發布到action.php,並且在成功完成ajax請求後,你可以顯示彈出窗口。

+0

我試過沒有成功。 – 2014-10-28 08:37:52

0

<?php if(isset($_POST['id']) && $_POST['id']>0){ ?> alert(message); <?php } ?>

0

有關彈出啄,檢查該鏈接Launch Bootstrap Modal on page load,這就是所謂的自舉模式,使用起來非常簡單。您需要編寫一個小腳本才能在頁面加載時啓動它。