我有一个主域名服务器" maindomain.com"和子域名。我打电话给一个" addon.com。
我在addon.com网站上有一个index.php文件,它从maindomain.com文件夹的根目录中提取php文件,它运行正常。我遇到的问题是有一个联系表单使用js Post到一个名为emailform.php的php文件,因为该文件位于主域名,我有跨域问题。
我尝试解决问题的方法是在子域文件夹中创建另一个名为subemailform.php的php文件,该文件只包含emailform.php的包含。
如果我直接转到subemailform.php页面,则会显示emailform.php中的echo。所以我知道包含工作正在进行中。但它并没有发送电子邮件。
我认为这将是一个很好的解决方法。有什么想法,为什么这不起作用和任何建议?
部分js代码:
function submitEmailForm() {
$.post('subemailform.php', { domainName: App.get('domainName'), name: $('#emailFormName').val(), phone: $('#emailFormPhone').val(), skype: $('#emailFormSkype').val(), email: $('#emailFormEmail').val() }, function() {
// alert('success!');
subemailform.php
<?php
include 'http://www.maindomain.com/emailform.php';
?>
emailform.php有$ name = $ _POST [&#39; name&#39;];和邮件($ to,$ email_subject,$ email_body,$ headers);代码。
我应该指出,如果我从同一个域调用它,js和emailform.php都可以工作。所以我知道代码正在运行。
答案 0 :(得分:0)
您可以使用JSONP来获取跨域ajax请求
json-p.org
JavaScript Cross-Domain Requests JSON
答案 1 :(得分:0)
在您允许
之前,跨域调用无效header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods:POST');
或使用JSONP
答案 2 :(得分:0)
您可以尝试“P3P”政策。