javascript - Magento通过ajax将数据插入数据库

标签 javascript php mysql ajax magento

我是 ajax 新手,所以我不确定我是否正确处理了这个问题,基本上我在 javascript 中有一个变量需要插入到数据库中,这就是我到目前为止所拥有的...

onInit: function() {
    window.fcWidget.on('widget:loaded', function() {
        window.fcWidget.user.get().then(function(resp) {
            var status = resp && resp.status,
            data = resp && resp.data;
            if (status === 200) {
                if (data.restoreId) {
                    // Update restoreId in  database

                    $.ajax({
                        type: "POST",
                        url: "insert.php",
                        data: data.restoreId, 
                        success: function(data) { alert("Success"); },
                        failure: function(data) { alert("Failure"); }

                    })

                }
            }
        });
    });
}

我已将文件“insert.php”放在同一文件夹中,但似乎根本没有被调用...

这就是 insert.php 的样子

<?php
    if(Mage::getSingleton('customer/session')->isLoggedIn()){

        if(isset($_POST['data.restoreId']){
            $restoreId =$_POST['data.restoreId'];
        }

        $first = Mage::getSingleton('customer/session')->getCustomer()->getFirstname();
        $last = Mage::getSingleton('customer/session')->getCustomer()->getLastname();

        $fullName = $first . "." . $last;

        //get resource model
        $resource = Mage::getSingleton('core/resource');
        //retrieve write connection
        $writeConnection = $resource->getConnection('core_write');
        //read connection
        $readConnection = $resource->getConnection('core_read');

        $exId = $fullName;
        $resId = $restoreId;

        $testQuery = "SELECT `externalId` FROM `freshchat_user` WHERE `restoreId` = '$fullName'";

        $result = $readConnection->fetchAll($testQuery);

        if(count($result) == '0'){
            $query = "INSERT INTO `freshchat_user`(`externalId`, `restoreId`) VALUES ('$exId','$resId')";
            $writeConnection->query($query);
        }else{
            //echo "nope";
        }
    }
?>

我检查了网络选项卡,但 insert.php 似乎根本没有被调用,我的代码有什么问题?

最佳答案

//请将您的 insert.php 文件放在根路径(Magento 安装路径)中,并在您的 javascript 代码中更改以下行。

url: "www.yourwebsite.com/insert.php",

关于javascript - Magento通过ajax将数据插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46960032/

相关文章:

javascript - Chrome 选项卡未激活时暂停 JavaScript

javascript - 将 JSON 解析为 HTML 嵌套列表

php - MYSQL/PHP 计算出现次数

java - 执行 SQL UPDATE 语句后刷新 JTable

javascript - 在 for 循环中声明 i 时使用 var

javascript - 关于 "index",我觉得是对的,什么时候是错的。我不知道为什么

javascript - 如果javascript条件为真,如何调用php函数

javascript - 打印功能在 Chrome 中无法正常工作

MySql 用连字符替换空格

mysql - 根据其他表的连接获取列的计数