У меня проблема в моем приложении ajax для laravel, я не могу загрузить изображения/файлы через ajax POST. всегда возвращает No.Laravel Ajax Загрузить картинку
Я думаю, что проблема в AJAX, загрузка без Ajax работает очень хорошо
пожалуйста, найти ниже мой код для загрузки изображений.
ajax :
$('form[name="photoedit"]').on('submit', function (e){
var res = $(this).attr('id');
var str = res;
var variable = str.substr(1);
e.preventDefault();
var pic = $('#u'+variable).val();
var mur_id = $('#mur_i'+variable).val();
$.ajax({
type: 'post',
dataType: 'json',
data: new FormData($("#p"+variable)[0], pic, mur_id),
contentType: false, .
cache: false,
processData: false,
success: function(data) {
....
}
view :
{!! Form::open(array('url'=> '/01/mur', 'method'=>'POST', 'enctype'=>'multipart/form-data', 'id'=>'p'.$mur->id, 'name'=>'photoedit')) !!}
{{ Form::file('u'.$journal->id, ['class' => 'upload fileUpload', 'multiple'=>'multiple', 'name'=>'u'.$journal->id, 'id'=>'u'.$journal->id]) }}
{!! Form::hidden('edi_i'.$mur->id, $mur->id) !!}
{{ Form::hidden('mur_i'.$mur->id, $mur->id, array('id' => 'mur_i'.$mur->id)) }}
{!! Form::submit('Save', array('class'=>'btn ideng', 'id'=>'d'.mur>id, 'style'=>'border-bottom: 2px solid #2d9e36; border-radius: 0; font-size: 12px; padding: 3px 8px; float: right; background: #35b73f; color: #ffffff; margin: 10px 0 5px 0;')) !!}
{!! Форма :: close() !!}
controller :
if($request->hasFile('pic')){
if($request->ajax()){
$avatar=$request->file('pic');
$filename=time() . '.' . $avatar->getClientOriginalExtension();
Image::make($avatar)->resize(650,500)->save(storage_path('img/profil/'01'/mur/'. $filename));
$edi_id=Input::get('mur_id');
$user = \App\Mur::find($edi_id);
$user->image = $filename;
$user->save();
return \Response::json($user);
}
}else{
return 'No';
}
Без скрытого поля он работает очень хорошо. ехр:
данные: новый FormData ($ ("# р" + переменная) [0]),
пытается 'вернуть вход :: все()' и проверить, что контроллер фактически получает –
, где я добавляю return Input :: all() в контроллере? – nabil
Вы можете вернуть его в первой строке внутри вашей функции –