Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Всем привет. Значит, делаю выводы постов/новостей в вид, при этом использую пагинацию. Суть в чём - как по нормальному проверять данные - есть ли они или нет, при том, что если использовать "paginate()", то проверки "@if(isset($posts) AND !empty($posts))" пофиг, есть ли данные или нет. А использую вместо "paginate()" -> "get()" - то проверка норм ведёт себя...
Как мне быть? Использовать пагинацию обязательно! Заранее спасибо!!!
Вот мой код (на всякий случай):
Модель:
public static function getIndexAll(){
/**
* Получение и вывод новостей для главной страницы
*/
$getIndexAll = DB::table('posts')
->orderBy('date_add_posts', 'DESC')
->join('category', 'posts.category_news', '=', 'category.id_category')
->where('index_news', '=', '1')
->paginate(Config::get('config.countGetPage'));
return $getIndexAll;
}
Вид:
@extends('templates.home')
@section('content')
@if(isset($posts) AND !empty($posts))
Посты есть!
@else
Постов нет!
@endif
@stop
if (Input::hasFile('file')) { $dir = '/uploads'.date('/Y/m/d/'); do { $filename = str_random(30).'.jpg'; } while (File::exists(public_path().$dir.$filename)); Input::file('file')->move(public_path().$dir, $filename); $profile->image = $dir.$filename; $profile->save(); }
делал чисто для jpg но поставишь при валидации (mime) и тд сможешь сделать все, можешь имя сделать оригинальным именем и расширением
благодарю за пример!
dima9595 пишет:HunterNomad пишет:Урок не урок)), а пример есть.
http://image.intervention.io/use/uploadsЭто библиотека, а хочется норм пример...
А это не пример?)))
// read image from temporary file
$img = Image::make($_FILES['image']['tmp_name']);// resize image
$img->fit(300, 200);// save image
$img->save('foo/bar.jpg');
Я имел ввиду пример, который написан на Laravel без сторонних библиотек)
Урок не урок)), а пример есть.
http://image.intervention.io/use/uploads
Это библиотека, а хочется норм пример...
Задача решена!
Для тех, у кого будет эта ошибка: Поле, в котором вы храните пароль (в БД), должно называться "password"!
Мне тоже интересно, особенно куда загружать...
Всем привет! Я новичёк по Laravel, так что надеюсь на вашу помощь)
Пишу авторизацию, но у меня вылазит ошибка "Undefined index: password".
База:
Форма:
<div class="brd">
{{ Form::open(['action' => 'AuthController@postLogin', 'class' => 'form-vert']) }}
<div class="form-group">
<label for="login" class="form-label">Логин:</label>
<div class="controls">
{{ Form::text('login_users', '', ['placeholder' => 'Введите ваш логин']) }}
</div>
</div>
<div class="form-group">
<label for="login" class="form-label">Логин:</label>
<div class="controls">
{{ Form::password('password_users', ['placeholder' => 'Введите ваш пароль']) }}
</div>
</div>
<div class="form-group">
<div class="controls">
{{ Form::button(Lang::get('message.login_auth'), ['type' => 'submit', 'class' => 'btn btn-success']) }}
</div>
</div>
{{ Form::close() }}
</div>
Контроллер:
public function postLogin(){
/**
* Подготовка к авторизации
*/
$input = Input::all();
$rules = [
'login_users' => 'required|min:4|max:20|alpha_dash', // уникальное | мин: 4 | макс: 20
'password_users' => 'required|min:6|' // уникальное | мин: 6
];
$validator = Validator::make($input, $rules);
if($validator->fails()){
$error_messages = $validator->messages()->all();
return View::make('login')->with('errors', $error_messages);
}else{
$login = User::authLogin($input);
if($login){
return Redirect::to('/');
}else{
return View::make('login')->with('errors', ['auth_error' => 'Вы ввели не правильно логин или пароль!']);
}
}
return 'Что-то пошло не так!';
}
Модель:
public static function authLogin($date){
/**
* Авторизация
*/
if(Auth::attempt([ 'login_users' => $date['login_users'], 'password_users' => $date['password_users'] ])){
return Auth::user();
}else{
return false;
}
}
Заранее спасибо!