Laravel 5.3简单的Ajax调用导致500错误

时间:2016-11-04 07:54:41

标签: jquery ajax laravel-5

我有一个简单的数据表,还有一个div,它链接到一个sliderreveal.js(一个jquery项目),它在一个面板中滑动,带有其他信息。

在数据表中,我有以下一行:

<td align="center"><input type="image" src="{{ asset('siteicons/prodec/Info_Box_Blue.png')}}" id="trigger" onclick="ShowSlider( {{ $item->Reference }} )" /></td>

这会触发一个简单的javascript方法:

 function ShowSlider(id)
      {
        $('#slider').load('../ajax/customers.php?id=' + id + "&_token={{  csrf_token() }}" );
        var slider = $('#slider');
        slider.slideReveal("show");
      }

ajax页面只显示一些信息。

所有这一切在本地主机上完美运行但在线我得到500错误。

我在互联网上搜索并按照建议添加了csrf令牌,但它没有任何区别。

2 个答案:

答案 0 :(得分:0)

可能是您的网址出错。

如果在localhost中您可以访问子文件夹(即localhost / 文件夹 / blabla),那么您可以使用 ../ 返回一步。

如果在制作中你没有使用相同的路径访问(例如yoursite.com/blabla)(注意缺少的文件夹),那么你就不会这样做。找到想要的路线。

我建议您在开发环境中使用虚拟主机,例如test.local。所以你可以改变你的功能:

function ShowSlider(id)
  {
    $('#slider').load('/ajax/customers.php?id=' + id + "&_token={{  csrf_token() }}" );
    var slider = $('#slider');
    slider.slideReveal("show");
  }

通过这种方式开发,您的代码将调用test.local / ajax / customers.php,而在生产中它将解析为yoursite.com/ajax/customers.php

答案 1 :(得分:0)

我通过在ajax页面上放置PHP显示错误并且没有正确调用PDO来解决这个问题。

课程始终在ajax页面上包含此内容,直到您满意为止!

<?php
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
?>

感谢大家的帮助。