Php Laravel 5.2路由
我对Laravel 5.2有一个奇怪的问题。 我已经更新别人的项目有一段时间了,现在大多数事情都正常工作了,但是,我有一个路线问题。 我使用PHP内置的error_log();查看实际执行的代码 在我的页面上,我有一个上传图像的按钮,一旦选择了一个图像,它应该通过Ajax调用上传:Php Laravel 5.2路由,php,ajax,laravel,controller,routing,Php,Ajax,Laravel,Controller,Routing,我对Laravel 5.2有一个奇怪的问题。 我已经更新别人的项目有一段时间了,现在大多数事情都正常工作了,但是,我有一个路线问题。 我使用PHP内置的error_log();查看实际执行的代码 在我的页面上,我有一个上传图像的按钮,一旦选择了一个图像,它应该通过Ajax调用上传: resources/views/assignments/create.blade.php … <script> … var $file = $("#file"); /*$file.be
resources/views/assignments/create.blade.php
…
<script>
…
var $file = $("#file");
/*$file.before('<button class="clickFile btn btn-success" data-id="#file" type="button">
{{Lang::get($lang_short_name.'.selectImage')}}</button>');
$('.clickFile').click(function(){
$($(this).attr('data-id')).click();
});*/
$file.change(function (e) {
e.preventDefault();
var myFormData = new FormData();
myFormData.append('file', $(this)[0].files[0]);
console.log('views/assignments/create.blade.php line 717: trying to upload in background');
$.ajax({
url : "{{url('assignment/uploadImage')}}",
type : "POST",
data : myFormData,
contentType: false,
cache : false,
processData: false,
success : function (data) {
var obj = jQuery.parseJSON(data);
initCropper(obj.url);
}
});
$(this).val('');
});
…
</script>
- 请注意,第一行是我在ajax调用中编写的console.log
app/Http/routes.php
…
Route::group(['middleware' => 'auth'], function () {
…
Route::post('assignment/uploadImage', error_log('test'));
…
}
然而,当我试图实际指向我的控制器时,什么也没有发生。以下是我用来重定向到控制器的代码:
app/Http/routes.php
…
Route::group(['middleware' => 'auth'], function () {
…
Route::post('assignment/uploadImage', ['uses' => 'AssignmentController@postImage']);
…
}
现在,这个调用在一个路由组内,使用身份验证中间件,但是由于上面的测试代码起作用,我假设这不是问题,再次,如果我错了,请纠正我,我将发布整个路由器
在我的控制器中,我有以下代码
app/Http/Controllers/AssignmentController.php
<?php namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Assignment;
use App\AssignmentFork;
use App\AssignmentView;
use App\Curriculum;
use App\Grade;
use App\Http\Requests;
use App\Langs;
use App\RoboticSolution;
use App\User;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Lang;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Validator;
class AssignmentController extends Controller
{
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
error_log('assignmentController index called');
$assignments = Assignment::with(['user.profile'])->orderBy('id', 'desc')->paginate(20);
return view('assignments.index')
->with('assignments', $assignments)
->with('mySaves', Auth::user()->savedAssignments);
}
public function create(){…}
public function store(){…}
public function show($id){…}
public function edit($id){…}
public function update($id, $data){…}
public function destroy($id){…}
public function postImage(){
error_log('attempted image upload......................');
if (Input::hasFile('file')) {
if (substr(Input::file('file')->getMimeType(), 0, 5) == 'image') {
// this is an image
$foto_name = str_random(10) . '_' . time() . '.' . Input::file('file')->getClientOriginalExtension();
Input::file('file')->move(public_path() . "/pictures/", 'full_' . $foto_name);
return json_encode(['name' => $foto_name, 'url' => asset("/pictures/" . 'full_' . $foto_name)]);
}
}
}
public function myDrafts(){…}
public function myPublished(){…}
public function getInfo(){…}
app/Http/Controllers/AssignmentController.php
你能给我们看一下AJAX调用的日志吗console@Vuldo我把它放在ajax调用下面的原始帖子中,您是否在html表单中设置了enctype=“multipart/form data”
?为了理解这一点:您在服务器错误日志中没有看到任何条目?@SfAnki-我没有,但我现在在输入字段中设置了它;这不会改变任何事情。
app/Http/Controllers/AssignmentController.php
<?php namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Assignment;
use App\AssignmentFork;
use App\AssignmentView;
use App\Curriculum;
use App\Grade;
use App\Http\Requests;
use App\Langs;
use App\RoboticSolution;
use App\User;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Lang;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Validator;
class AssignmentController extends Controller
{
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
error_log('assignmentController index called');
$assignments = Assignment::with(['user.profile'])->orderBy('id', 'desc')->paginate(20);
return view('assignments.index')
->with('assignments', $assignments)
->with('mySaves', Auth::user()->savedAssignments);
}
public function create(){…}
public function store(){…}
public function show($id){…}
public function edit($id){…}
public function update($id, $data){…}
public function destroy($id){…}
public function postImage(){
error_log('attempted image upload......................');
if (Input::hasFile('file')) {
if (substr(Input::file('file')->getMimeType(), 0, 5) == 'image') {
// this is an image
$foto_name = str_random(10) . '_' . time() . '.' . Input::file('file')->getClientOriginalExtension();
Input::file('file')->move(public_path() . "/pictures/", 'full_' . $foto_name);
return json_encode(['name' => $foto_name, 'url' => asset("/pictures/" . 'full_' . $foto_name)]);
}
}
}
public function myDrafts(){…}
public function myPublished(){…}
public function getInfo(){…}