Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Re: Laravel 5.x » Отправка формы при помощи аякса » 29.06.2016 01:23:50

И еще у Вас в коде $image = $request->input('img'); А нужно $image = $request->file('img');

#2 Re: Laravel 5.x » Отправка формы при помощи аякса » 29.06.2016 01:04:16

BMTH пишет:
max_kp пишет:
BMTH пишет:

Нет, не выходит. Кучу всего перепробовал....
А нет ли способа без аякса залить изображение в другую таблицу при добавлен пользователя?

Думаю Вам поможет это https://laravel.ru/docs/v5/eloquent-relationships. Если я правильно понял, у Вас как-то модель изображений должна быть связана с другими моделями, которые будут использовать изображения. В выше приведенном разделе документации указан самый удобный способ (способы).

Со связями проблем нет. Проблема в отправке значения input type file, которое не отправляется

В документации загрузка файла на сервер описана вот так (смотрю версию 5.2):
$request->file('photo')->move($destinationPath);
$request->file('photo')->move($destinationPath, $fileName);
У Вас в методе public function uploadImg(Request $request) этого нет. Получается Вы не загружаете сам файл на сервер в каталог.

#3 Re: Laravel 5.x » Отправка формы при помощи аякса » 28.06.2016 17:35:08

BMTH пишет:

Нет, не выходит. Кучу всего перепробовал....
А нет ли способа без аякса залить изображение в другую таблицу при добавлен пользователя?

Думаю Вам поможет это https://laravel.ru/docs/v5/eloquent-relationships. Если я правильно понял, у Вас как-то модель изображений должна быть связана с другими моделями, которые будут использовать изображения. В выше приведенном разделе документации указан самый удобный способ (способы).

#4 Re: Laravel 5.x » Админка? » 17.06.2016 00:09:10

Где-то в инете натыкался на информацию, что sleeping owl имеет один недостаток. Для него нет понятия разделения прав. Т.е. любой кто авторизовался - админ. Если нужно разделение прав пользователей, это тоже решаемо, но через танцы с бубном. Хотя может и наговаривают.

#5 Re: Общий раздел » Хранение структуры материала в базе данных » 16.06.2016 23:55:05

http://otdel-devsite.ru/laravel-5-%d0%b … 2%d1%8c-2/ вот тут автор очень доходчиво для новичков расписал с примерами, там про "кастомные поля" есть.

#6 Общий раздел » Laravel 5.1 (LTS) или последняя стабильная версия » 02.06.2016 17:02:25

max_kp
Ответов: 1

Помогите пожалуйста разобраться, а как лучше? Наткнулся вот https://laracasts.com/discuss/channels/ … e-51-or-52. Прочитав переписку, сделал для себя вывод, что если я, например, делаю скажем интернет-магазин, который будет работать, постепенно обрастать функционалом, в общем "жить" долго, то мне было бы разумнее выбрать версию 5.1. Однако там же я увидел мнение, что использование версии LTS - это "ловушка". Я лишаю себя возможности использовать новые функции фреймворка, который обновляется. И автор данного утверждения советует использовать последнюю стабильную версию. Вроде логично. Но, не случится ли так, что в погоне за новыми версиями, я могу столкнуться с тем, что ранее созданный функционал проекта просто станет не совместим с новшествами фреймворка? Мне кажется, что спрогнозировать сегодня, что может "отвалиться" завтра не возможно, и с очередным обновлением версии фреймворка может получится так, что придется переделывать очень много, что может быть не выгодно.

#7 Re: Laravel 5.x » Регистрация пользователя администратором » 02.06.2016 12:43:19

Вы все напутали. Стандартный набор для аутентификации/регистрации выполняет функции  по регистрации нового пользователя. А именно, пришел человек на сайт, выполнил необходимые процедуры и зарегистрировался (залогинился). А Вам нужно, чтобы некто, обладающий некими правами, который тоже кстати уже залогинился с этим набором прав, мог выполнить функцию по регистрации нового пользователя (не понимаю зачем это, но раз надо, значит надо. Хотя подумайте, может и не надо). Таким образом Вы должны создать все необходимые инструменты для этого. Другими словами продумать (нарисовать на бумаге) логику вашего приложения, а потом уже приступить к написанию кода, принять решение что из инструментов фреймворка Вы будете использовать.

#8 Re: Laravel 5.x » Регистрация пользователя администратором » 02.06.2016 00:35:36

Уточните, что Вы хотите сделать? Вам нужно зарегистрировать пользователя и дать ему роль администратора? Или Вам нужно, чтобы пользователь с ролью администратора мог регистрировать других пользователей? И какие именно методы ларавеля Вы использовали и что не получилось?

#9 Re: Laravel 5.x » Электроный каталог » 25.03.2016 23:32:26

karandashbest пишет:

Вроде бы с админкой разобралься чуток, подскажите как хранить путь к изображением если у меня будет три фото или там две ?

Как вариант таблицы: Картинки, Товары, Связь_Картинки_Товары. В третьей таблице поля id картинки и id товара. Потом запросами все это вытягиваете. Способ подробно описан в книге Кевин Янк "php и mysql от новичка к профессионалу". И где-то тут приводили ссылку на блог, там у автора похожая реализация с параметрами товара.

#10 Re: Laravel 5.x » Электроный каталог » 16.03.2016 23:31:56

https://laracasts.com/ - сайт с уроками
http://administrator.frozennode.com/ - админка на (для) Laravel

3) как мне мне выделать поля под изображения в БД, оно может одно быть ? может быть два три ?

Подумайте над вариантом разные таблицы. Например таблица images, связь с таблицей "товары".

#11 Re: Laravel 5.x » Загрузка файлов и запись в БД (ошибка) » 25.02.2016 01:03:11

Случайно нашел решение - composer update. Была версия Laravel 5.2.16, обновился до 5.2.21 - проблема исчезла

#12 Laravel 5.x » Загрузка файлов и запись в БД (ошибка) » 25.02.2016 00:39:41

max_kp
Ответов: 1

Добрый день,
при загрузке изображений получаю вот такую вот ошибку:
FileNotFoundException in File.php line 37: The file "C:\OpenServer\userdata\temp\php8AF.tmp" does not exist
При этом файл сохраняется в папку uploads проекта, но в запись в БД соответственно не добавляется. Использую OpenServer.  Поиск в инете ничего путного не дал. Прошу помочь разобраться. На всякий случай код контроллера:

if ($request->file('product_image')->isValid()) {
            $destinationPath = 'uploads';
            $extension = $request->file('product_image')->getClientOriginalExtension();
            $fileName = rand(11111,99999).'.'.$extension;
            $request->file('product_image')->move($destinationPath, $fileName);
        }
$product = new Product;

        $product->name = $request->name;
        $product->alias = $request->alias;
        $product->categ_id = $request->category;
        $product->image = $fileName;

        $product->save();   

Если убираю кусок кода загрузки файла, запись в БД добавляется, ошибок нет. Тоже самое, если убираю кусок кода - запись в БД, файл перемещается - ошибок нет. Если все вместе - файл перемещается, запись в БД не добавляется получаю ошибку.

#13 Re: Laravel 4 » Ошибка при ajax запросе в форме обратной связи » 09.07.2015 21:40:47

dima9595 пишет:

Коль разобрался - просвети нас!)

На самом деле, даже стыдно сказать в чем была проблема smile А именно подключение библиотеки JQuery и написание скрипта. Я ее подключил в самый низ, а скрипт писал получается выше (просто в теле шаблона). При этом все скрипты js вынесены в отдельный файл, который как и положено подключен ниже библиотеки. Таким образом, получился вот такой компот. Не понимал долго, что происходит. smile

Но теперь у меня новый вопрос есть smile Пока пытаюсь разобраться сам, если кратко суть проблемы - сообщения валидации не подтягиваются из папок. А подтягиваются из папки языка, который установлен в app.php. При этом другие сообщения (не относящиеся к валидации) в шаблоне через языковые переменные подтягиваются как положено, каждое из своей папки.

#15 Laravel 4 » Ошибка при ajax запросе в форме обратной связи » 17.06.2015 23:49:13

max_kp
Ответов: 4

Добрый день!
Есть сайт одностраничник. В низу форма обратной связи. Задача - сделать ajax отправку е-майл. Проблема - выдает ошибку при нажатии кнопки "отправить" MethodNotAllowedHttpException. Читал данную тему https://laravel.ru/forum/viewtopic.php?id=868. У автора в начале была та же самая ошибка, но в теме не понял как проблема решилась. Искал информацию по данной ошибке, нашел несколько статей, где написано, что нужно делать роут с именем. Сделал роут с именем:

Route::post('submit', array('as' =>'submit', function(){

	$validator = Validator::make(
			array(
				'name' => Input::get('name')
			),
			array(
				'name' => 'required|max:10'
			)
		);
	if($validator->fails()) {
		return Response::json( 
			array(
				'success'=> false , 
				'errors'=>$validator->errors()->toArray()
				)
			);

	}

	return Response::json(array('success'=>true));

Форма главной странице

{{ Form::open(array('route' => 'submit'))}}
				<input type="text" name="name" id="name">
				<button type="submit">Submit</button>
			{{ Form::close() }}

Скрипт

<script>
	      	$(document).ready(function(){
	      		$('form').submit(function(e){
	      			e.preventDefault();

	      			var formData = new FormData();

	      			formData.append('name', $('#name').val());
	      			$.ajax({
	      				url: 'submit',
	      				method: 'post',
	      				processData: false,
	      				contentType: false,
	      				cache: false,
	      				dataType: 'json',
	      				data: formData,
	      				success: function(data){
	      					console.log(data);
	      				},
	      				error: function(){}
	      			});
	      		});
	      	});
      	</script>

Ошибка исчезла но перекидывает на пустую страницу с адресом http://example.com/submit
Вопрос, как правильно сделать, чтоб не перекидывал на другую страницу, а оставаться на текущей, в нужной секции. В статьях, которые были найдены по этому вопросу,

Подвал раздела