我正在尝试实现一个youtube教程我发现到我的laravel php项目,教程在这里
我在视频下面的链接中得到了教程的基本代码我将此代码重写为jquery php请求,如下所示:
$(document).ready(function(){
$("#getimages").click(function(){
var folder = 'c://xampp/htdocs/proofofconcept/savedImages/eventfolders/event1';
$.ajax({
url: 'getImages',
type: "get",
data: {
folder: folder,
token: $("#_token").val()
},
dataType: "json",
success: function(response){
var thumbnailbox = $("#thumbnailbox");
var pictureframe = $("#pictureframe");
var d = JSON.parse(response);
pictureframe.innerHTML = "<img src='" + d.img1.src + "'>";
thumbnailbox.innerHTML = "";
for (var o in d) {
if (d[o].src) {
thumbnailbox.innerHTML += '<div onclick="putinframe(''' + d[o].src + ''')"><img src="' + d[o].src + '"></div>';
}
}
}
});
});
});
我的html是这样的:
<form>
<div id="thumbnailbox"></div>
<div id="pictureframe"></div>
<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
<input type="button" id="getimages" name="getimages"/>
</form>
现在当我按下按钮时,我得到一个500内部服务器错误(所以我猜帖子必须工作),我不再得到我之前得到的csrf令牌错误,所以问题也不应该在那里,所以问题应该在我试图从这里的某个地方得到的方法的后端代码:然而,在我添加'getImages'和'test'函数之前,所有这些代码都在工作(测试函数获得页面,那一个工作,只是当我试图做一个get请求到getImages,它失败了),所有不在getImages的代码现在仍然有效。
<?php namespace App'Http'Controllers;
use Input;
use Log;
use Auth;
use DB;
use Redirect;
use DateTime;
use Response;
use URL;
use DateInterval;
use File;
use App'Http'Controllers'Controller;
class HomeController extends Controller {
/*
|--------------------------------------------------------------------------
| Home Controller
|--------------------------------------------------------------------------
|
| This controller renders your application's "dashboard" for users that
| are authenticated. Of course, you are free to change or remove the
| controller as you wish. It is just here to get your app started!
|
*/
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard to the user.
*
* @return Response
*/
public function index()
{
return view('home');
}
public function addArticle(){
return view('newArticle');
}
public function readArticle(){
return view('readArticle');
}
public function deleteArticle(){
$articleid = Input::get('id');
$article = DB::table('articles')->where('id',$articleid)->first();
unlink($article->article_path);
DB::table('articles')->where('id',$articleid)->delete();
return Response::json(URL::route('home'), 200);
}
public function saveArticle(){
$noerrors = true;
$errors = array();
$content = Input::get('content');
$summary = Input::get('summary');
$articleid = Input::get('id');
$filepath = Input::get('filepath');
if(!Input::has('content')){
$noerrors = false;
array_push($errors,array('msg'=>"You can't upload an empty article"));
}
if(!Input::has('summary')){
$noerrors = false;
array_push($errors,array('msg'=>"You can't upload an article without a summary"));
}
if($noerrors){
Log::info($summary . ' ' . $articleid);
File::put($filepath,$content);
DB::table('articles')->where('id',$articleid)->update(array(
'summary' => $summary
)
);
return Response::json(URL::route('home'), 200);
}else{
return Response::json($errors,500);
}
}
public function editArticle(){
return view('editArticle');
}
public function createArticle(){
$noerrors = true;
$errors = array();
$content = Input::get('content');
$summary = Input::get('summary');
$user_id = Input::get('id');
if(!Input::has('content')){
$noerrors = false;
array_push($errors,array('msg'=>"You can't upload an empty article"));
}
if(!Input::has('summary')){
$noerrors = false;
array_push($errors,array('msg'=>"You can't upload an article without a summary"));
}
$randname = str_random(42);
$filename = $randname . '.txt';
$filepath = '../../savedArticles/' . $filename;
if($noerrors){
File::put($filepath,$content);
DB::table('articles')->insert(array(
'poster_id' => $user_id,
'article_path' => $filepath,
'summary' => $summary
)
);
return Response::json(URL::route('home'), 200);
}else{
return Response::json($errors,500);
}
}
public function getImages(){
/*$folder = Input::get("folder");
$jsonData = '{';
$dir = $folder."/";
$dirHandle = opendir($dir);
$i = 0;
while ($file = readdir($dirHandle)) {
if(!is_dir($file) && strpos($file, '.jpg')){
$i++;
$src = "$dir$file";
$jsonData .= '"img'.$i.'":{ "num":"'.$i.'","src":"'.$src.'", "name":"'.$file.'" },';
}
}
closedir($dirHandle);
$jsonData = chop($jsonData, ",");
$jsonData .= '}';*/
$jsonData = 'test';
return $jsonData;
}
public function test(){
return view('mytest');
}
}
如果有人知道什么可能导致以下错误或如何我可以围绕他们工作,请让我知道。
我得到的错误在这里:
> [2015-06-09 12:16:45] local.ERROR: exception 'ReflectionException'
> with message 'Class App'Http'Controllers' does not exist' in
> C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Container'Container.php:776
> Stack trace:
> #0 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Container'Container.php(776):
> ReflectionClass->__construct('App'Http'Contro...')
> #1 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Container'Container.php(656):
> Illuminate'Container'Container->build('App'Http'Contro...', Array)
> #2 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Application.php(644):
> Illuminate'Container'Container->make('App'Http'Contro...', Array)
> #3 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'ControllerDispatcher.php(83):
> Illuminate'Foundation'Application->make('App'Http'Contro...')
> #4 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'ControllerDispatcher.php(54):
> Illuminate'Routing'ControllerDispatcher->makeController('App'Http'Contro...')
> #5 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Route.php(204):
> Illuminate'Routing'ControllerDispatcher->dispatch(Object(Illuminate'Routing'Route),
> Object(Illuminate'Http'Request), 'App'Http'Contro...',
> 'HomeController')
> #6 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Route.php(134):
> Illuminate'Routing'Route->runWithCustomDispatcher(Object(Illuminate'Http'Request))
> #7 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Router.php(701):
> Illuminate'Routing'Route->run(Object(Illuminate'Http'Request))
> #8 [internal function]: Illuminate'Routing'Router->Illuminate'Routing'{closure}(Object(Illuminate'Http'Request))
> #9 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(141):
> call_user_func(Object(Closure), Object(Illuminate'Http'Request))
> #10 [internal function]: Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #11 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(101):
> call_user_func(Object(Closure), Object(Illuminate'Http'Request))
> #12 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Router.php(703):
> Illuminate'Pipeline'Pipeline->then(Object(Closure))
> #13 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Router.php(670):
> Illuminate'Routing'Router->runRouteWithinStack(Object(Illuminate'Routing'Route),
> Object(Illuminate'Http'Request))
> #14 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Routing'Router.php(628):
> Illuminate'Routing'Router->dispatchToRoute(Object(Illuminate'Http'Request))
> #15 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Http'Kernel.php(214):
> Illuminate'Routing'Router->dispatch(Object(Illuminate'Http'Request))
> #16 [internal function]: Illuminate'Foundation'Http'Kernel->Illuminate'Foundation'Http'{closure}(Object(Illuminate'Http'Request))
> #17 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(141):
> call_user_func(Object(Closure), Object(Illuminate'Http'Request))
> #18 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Http'Middleware'VerifyCsrfToken.php(43):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #19 C:'xampp'htdocs'proofofconcept'laravel'app'Http'Middleware'VerifyCsrfToken.php(17):
> Illuminate'Foundation'Http'Middleware'VerifyCsrfToken->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #20 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> App'Http'Middleware'VerifyCsrfToken->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #21 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'View'Middleware'ShareErrorsFromSession.php(55):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #22 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> Illuminate'View'Middleware'ShareErrorsFromSession->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #23 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Session'Middleware'StartSession.php(61):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #24 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> Illuminate'Session'Middleware'StartSession->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #25 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Cookie'Middleware'AddQueuedCookiesToResponse.php(36):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #26 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> Illuminate'Cookie'Middleware'AddQueuedCookiesToResponse->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #27 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Cookie'Middleware'EncryptCookies.php(40):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #28 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> Illuminate'Cookie'Middleware'EncryptCookies->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #29 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Http'Middleware'CheckForMaintenanceMode.php(42):
> Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #30 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(125):
> Illuminate'Foundation'Http'Middleware'CheckForMaintenanceMode->handle(Object(Illuminate'Http'Request),
> Object(Closure))
> #31 [internal function]: Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}(Object(Illuminate'Http'Request))
> #32 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Pipeline'Pipeline.php(101):
> call_user_func(Object(Closure), Object(Illuminate'Http'Request))
> #33 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Http'Kernel.php(115):
> Illuminate'Pipeline'Pipeline->then(Object(Closure))
> #34 C:'xampp'htdocs'proofofconcept'laravel'vendor'laravel'framework'src'Illuminate'Foundation'Http'Kernel.php(84):
> Illuminate'Foundation'Http'Kernel->sendRequestThroughRouter(Object(Illuminate'Http'Request))
> #35 C:'xampp'htdocs'proofofconcept'laravel'public'index.php(53): Illuminate'Foundation'Http'Kernel->handle(Object(Illuminate'Http'Request))
> #36 {main}
显然问题出在我的路由上。我有一个路由定义为:
Route::get('getImages','@HomeController@getImages');
但实际上应该是:
Route::get('getImages','HomeController@getImages');