2016-11-04 81 views
1

我有一個簡單的數據表和一個div鏈接到一個sliderreveal.js(一個jQuery項目),其中包含其他信息的面板滑動。Laravel 5.3簡單的Ajax調用導致500錯誤

DataTable中我有以下行:

<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頁面只顯示一些信息。

所有這些在localhost上運行完美,但在線我得到一個500錯誤。

我在互聯網上搜索並按建議添加了csrf標記,但沒有任何區別。

+0

檢查您的'laravel.log'文件以查找可能的錯誤。 –

+0

500是一個服務器端錯誤爲我們提供您的laravel控制器爲客戶 – madalinivascu

+0

客戶沒有控制器 - 我只是使用PDO來獲取有關ID的信息。它獨立於Laravel。 – Jim

回答

0

可能這是您的網址錯誤。

如果在本地主機訪問到子文件夾(即本地主機/ 文件夾 /布拉布拉),那麼你使用../去退一萬步的。

如果在生產中不使用相同的路徑訪問(即yoursite.com/blabla)(失蹤文件夾)你沒有找到想要的路線。

我建議你在開發environemtn中使用虛擬主機,比如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

0

我想通過在ajax頁面上放置一個PHP顯示錯誤並且它沒有正確調用PDO。

課程是總是包括這個在ajax頁面上,直到你滿意爲止!

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

謝謝大家的幫助。