Как хранить несколько значений в одном поле laravel


Как хранить несколько значений в одном поле laravel

08.01.2020 09:00:28 Просмотров 113 Источник

Я использую эти простые формы и хочу сохранить несколько данных за один раз, как это возможно?

контроллер

  $status= new PostTable();
  $status->language = $request->language;

лезвие

<input type="checkbox" value="hindi" name="language[]" id="language"> Hindi

модель

protected $fillable = [
  'language'
 ]
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105442067_59640171
вы можете вставлять разделенные запятыми значения или данные в кодировке json
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105442096_59640171
'language' => json_encode($language) я пробовал, как эти, но это не работает.!
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105446888_59640171
Амит я хочу отправить на пенсию данные, как это сделать.?
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105447072_59640171
Просто извлеките значение и используйте для него json_decode. Например, json_decode($language)
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105447707_59640171
При просмотре вы можете использовать json_decode ($language) и использовать foreach для Эха каждого значения
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105447806_59640171
хорошо, amit, но вы хотите знать о стороне контроллера, как компактировать данные, средства запроса
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105447969_59640171
я сделал это, $status = PostTable:: get (); return view ('post.профиль', ['status'=>$status]);
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105448425_59640171
Да вы все сделали правильно
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel#comment105448884_59640171
пожалуйста отметьте мой ответ как принятый если это действительно поможет вам

Ответы - Как хранить несколько значений в одном поле laravel / How to Store multiple values in single field laravel

Manojkiran.A

08.01.2020 09:07:32

Хранение массива не допускается внутри базы данных mysql

так что вы можете конвертировать его в json и сделать это

$status->language = json_encode($request->language);

или

$status->language = implode(',', $request->language);
Lalit Kumar

08.01.2020 09:08:39

You can insert comma
implode(",",$request['language'])
Amit Sharma

08.01.2020 09:08:43

Вот как это нужно сделать в вашем контроллере

$status= new PostTable();
$language[] = $request->language
$status->language = json_encode($language);
Vikas Katariya

08.01.2020 09:19:24

пожалуйста chnage ваш код потому что вы выбираете несколько языков так что используйте implode

ИЗМЕНЕНИЕ

 $status->language = $request->language;
albus_severus

08.01.2020 09:56:47

Здесь в from $request - > язык является array.In php вы дали функцию > implode ().Функция сжимается в PHP используется, чтобы "объединить элементы массива в строку".Так что попробуйте этот

$status->language = implode(',', $request->language); //in which how you want separte your array is the first param 

Он сохранит ваши множественные данные отдельно через запятую.Для деталей: https://www.c-sharpcorner.com/UploadFile/051e29/implode-and-explode-function-in-php/

スージン

08.01.2020 10:54:58

используйте функцию serialize()

$status->language = serialize($request->language);

вы можете отменить сериализацию позже, чтобы использовать .

unserialize($request->language)
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel/59641575#comment105446037_59641575
с сериализацией тоже можно, спасибо человеку.!
https://stackoverflow.com/questions/59640171/how-to-store-multiple-values-in-single-field-laravel/59641575#comment105446396_59641575
добро пожаловать ;)
Shamsheer inder Singh

08.01.2020 01:41:06

Попробуйте этот метод для нескольких значений:

 $user = User::find(auth()->user()->id);
 $categoriesString = implode(",", $request->get('categories'));
 $user->categories = $categoriesString;
 $user->save();

Для Нескольких Изображений:

$medical_record = [];
$image = $request->file('file_name');
if ($image) {
    foreach ($image as $files) {
        $destinationPath = storage_path('medical-records/');
        $profileImage = date('YmdHis') . uniqid() . $files->getClientOriginalExtension();
        $files->move($destinationPath, $profileImage);
        $medical_record[] ="$profileImage";         
    }
    $data['file_name'] = implode(",", $medical_record);
}
Помочь в развитии проекта:
Закрыть X