Я работаю над небольшим сайтом, используя laravel 5.2 (сейчас добавляю фото) и хочу обновить
существующий (через всплывающее окно начальной загрузки и выберите новый для текущих фотографий, я делаю в процессе запроса ajax, как это)
$('select#choose_update_photo').on('change',function() {
$category_id = $(this).val(); // category_id for the photo
$.ajax({
type : 'post' ,
url: '{{ url('/ChoosePhotos') }}',
data : {id : $category_id ,
"_token": token },success: function(data) { ... });
на данный маршрут:
// the route for making post request for getting photos
Route::post('ChoosePhotos','PhotosController@choosePhoto');
и это ответ:
public function choosePhoto () {if(request()->ajax())
{
$result = request()->input('id');$all_photos = $this->photo->RetreiveAllPhotos();
return response()->json($all_photos) ;
}
}
и когда я нажимаю на любую из полученных фотографий, я закрываю модальное
и сохранить (полученный (image_id) в скрытом вводе в моей форме)
как это :
но то, что я основал, что если я изменил скрытый (id) вручную, как это:
<input type="hidden" name="pop_photo_hidden" value="20" id="hide_photo_id">
это опубликует
что мой контроллер, чтобы сохранить его ,,, и это разрушит всю мою работу
как бороться с этим ,,, и есть ли другой подход для отправки данных (в моем случае photo_id), не позволяя пользователю трогать их или сфабриковать это я)
определите photo_id как защищенный в вашей модели.
protected $guarded=['photo_id'];
Других решений пока нет …