繁体   English   中英

PHP-Jquery-AJAX,显示弹出消息

[英]PHP-Jquery-AJAX, show popup message

我迷失了寻找解决方案的道路,并立即需要帮助。 我有一个名为list.php的php页面,其中显示了每个产品上带有购买图标的产品列表。 单击“购买”按钮后,它将定向到action.php(其中包含要添加到数据库中的脚本),然后使用标题(位置:list.php?id = $ r [id_product])返回同一页面。 返回list.php后,我想显示一个弹出消息“该产品现在已添加到购物车”。 怎么做?

您可以使用cookie ,返回后只需检查是否存在指定的cookie ,如果存在,则显示消息。

但是,如果您使用的是ajax ,则不需要Cookie,只需在ajax解析函数中添加弹出功能即可,

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);
?>

在action.php上创建会话或Cookie

检查list.php是否找到显示弹出窗口

在显示弹出窗口后销毁它,因此它将一次又一次显示。

您在标题中提到了ajax,所以为什么不使用ajax将其发布到action.php,成功完成ajax请求后,您可以显示弹出窗口。

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

关于弹出窗口,检查链接在页面加载时启动启动模态 ,它被称为启动模态,使用非常简单。 您需要编写一个小的脚本,以便在页面加载时启动它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM