2016-05-04 49 views
0

我目前的代码如下工作A-OK,它基本上在onClick事件中加载一个带有消息的漂亮的通知框,所以当用户按下按钮时,通知会弹出:通过Javascript调用一个php文件

<button id="buttonsuccess" class="btn btn-success" onClick="FunctionSuccess()">button</button> 

<script> 
function FunctionSuccess(){ 
Lobibox.notify('success', { 
iconSource: 'fontAwesome', 
size: 'mini', 
delay: 8000, 
sound: false, 
title: 'Success!', 
msg: 'Success message here.' 
}); 
} 
</script> 

但是,我想在onClick事件上运行一个PHP文件。我的代码在Javascript代码中运行PHP文件如下:

<button id="buttonsuccess" class="btn btn-success" onClick="FunctionSuccess()">button</button> 

    <script> 
    function FunctionSuccess(){ 

$.ajax({ 
    url: '/copy/test.php' 
}) 

Lobibox.notify('success', { 
iconSource: 'fontAwesome', 
size: 'mini', 
delay: 8000, 
sound: false, 
title: 'Success!', 
msg: 'Success message here.' 
}); 
} 
</script> 

但是这不起作用。我实际上收到了通知框消息,但是PHP代码无法运行。相反,我得到控制台以下错误:

GET http://domain.com/copy/test.php 500 (Internal Server Error) 

我只需要在test.php的文件中执行代码,我不需要从它那里得到的数据或交的数据,只是执行PHP文件。顺便说一句,我已经测试了PHP文件,它工作正常。

error_log显示没有错误,也没有PHP错误。 php文件的权限也是可以的。

非常感谢您能够提供的任何见解。

谢谢。

回答

0

(假设你正在使用的镀铬..)

检查您的控制台,并启用“LogXMLHTTPRequests”如果未选中它。

当你点击按钮,你应该看到在控制台中被调用的网址。右键单击它,并在新窗口中打开。

很可能是错误的域名出现,或者PHP代码中有错误。

您也可以打开控制台并选择网络选项卡。如果您的请求生成了500,它会显示为红色,您可以右键单击该行,选择“复制响应”并将其粘贴到您喜欢的文本编辑器中。

+0

我启用'LogXMLHTTPRequests',控制台显示:XHR完成加载:GET“http://domain.com/copy/test.php”。 这显示正确的域和文件路径。 当我在FunctionSuccess函数之外运行完全相同的错误时,PHP代码中不会出现错误,因此它工作正常。只有在FunctionSuccess函数内部通过ajax调用运行PHP代码时,才会出现内部服务器500错误。 – user3591436

+0

并没有HTTP 500?这听起来像是成功,不是吗? –

+0

我仍然收到HTTP 500错误。对不起,我应该提到这一点。 – user3591436

0

对不起,我不能把它放在评论中。 请尝试将网址放在双引号中。

+0

我得到:GET http://domain.com/copy/test.php 500(内部服务器错误) XHR完成加载:GET“http://domain.com/copy/test.php”。 – user3591436

+0

啊,你忘了把分号! – alsaleem

+0

$ .ajax({url:'/copy/test.php' }); <----即使使用分号,我也会得到相同的HTTP 500错误,除非您的意思是其他地方的冒号? – user3591436

相关问题