是否可以通过点击来发起后台脚本的执行?
我在CMS / CRM中,并希望在单击CMS / CRM中的某个链接时触发外部文件加载。
e.g。激活php.mailer发送电子邮件。
使用(跨域漏洞?)
时似乎是一个安全问题foobar.onload()
如果不是,则不会在后台执行该文件。 我已经看到它在使用
的python中解决了subprocessor()
外部脚本虽然在我的域上,但不会触及CMS / CRM 有什么想法吗?
答案 0 :(得分:1)
在JavaScript中,您无法访问文件系统,但您可以使用ajax通过不同的方法请求一些URL(GET,POST ...)。
您从网址调用的脚本可以执行一个功能,以便在需要时发送电子邮件。
如果你了解jQuery,你可以在JavaScript中做类似的事情
$.get("myScript.php");
在 myScript.php 文件中:
mail('you@mailhost.com', 'Hello', 'Cool !');
如果您的php脚本不在同一个域中,您应该检查 Access-Control-Allow-Origin标头,它允许您的客户端(执行ajax脚本的浏览器)调用远程php脚本
答案 1 :(得分:0)
您可以让您的点击事件处理程序发出AJAX请求。例如:
myButton.onclick = function (e)
{
// Make an AJAX request with jQuery
$.get('/ajax/getFoo.php', function (data)
{
// This runs when the AJAX call returns
});
}
或者,您也可以查看jQuery .load()函数: