链接PHP与Ajax Magento 2
我想创建一个简单的“注册您的兴趣”行动。我有前端工作,但我不知道如何将AJAX链接到PHP文件。我在哪里把PHP文件?链接PHP与Ajax Magento 2
我目前的AJAX代码:
$.ajax({
url: "register-interest.php",
type: "GET",
dataType: "json",
data: {
type : "registerInterest",
email : userEmailLog,
user : userNameLog,
product : productTitle,
sku : productSku
},
success: function (response) {
JSON.stringify(response);
},
error: function (err) {
JSON.stringify(err);
},
complete : function() {
//$('.user-accept').addClass('unhide');
loading();
}
});
首先,你检查网址变量是否正确,然后提供响应像
success: function (response) {
JSON.stringify(response);
},
您的网址值的任何数据:
"register-interest.php"
这意味着,该文件的亲认为AJAX请求需要与包含执行AJAX请求的JavaScript文件的页面在相同的目录级别可用。
例子:
如果你的网页是在http://example.com/my/ajax/page.html
随后的JavaScript如果你改变了JS URL值将执行AJAX请求的URL http://example.com/my/ajax/register-interest.php
或者阅读"/register-interest.php"
,那么AJAX请求将提供给:http://example.com/register-interest.php
你需要把它放在你的服务器上取决于你的web服务器的webroot的折叠方式r结构是有组织的,但是你应该能够从JavaScript将要求解决的URL中恢复工作。
感谢您的回复。我只是有问题把php文件放在Magento 2文件结构中。 – Mark
这取决于。如果PHP文件是一个独立的php文件,可以直接处理请求,然后放置在Magento的公共目录中 - 在源码树中,这将是https://github.com/magento/magento2/tree/2.0/pub。但是,我想你可能想要在处理AJAX响应时访问所有Magento框架的功能,在这种情况下,您应该在控制器上创建一个动作,将其路由到一个URL,然后将jQuery ajax调用适当地更改为反映这一点。 – Benjamin
那就是晶圆厂本杰明!你知道任何有关在控制器上创建一个动作的指南,或者是指向正确方向的东西吗? – Mark
多数民众赞成在那不完全是我之后。我的问题是我不知道把PHP文件放在哪里。它是否需要进入自己的模块? – Mark