Вопрос - Ответ по RotorCMS

Печать RSS
9218
Кураторы темы:


Господин ПЖ
0
А что у тебя в app/Controllers/BlogController.php на 150 строке примерно

там должно быть что-то типа
if ($blog->user_id !== getUser('id')) {
abort('default', 'Изменение невозможно, вы не автор данной статьи!');
}
Н

Пацак
0
А что у тебя в app/Controllers/BlogController.php на 150 строке примерно

там должно быть что-то типа
if ($blog->user_id !== getUser('id')) {

abort('default', 'Изменение невозможно, вы не автор данной статьи!');
}
@Vantuz (Сегодня / 13:24)

public function edit($id)
{
if (! getUser()) {
abort(403, 'Для редактирования статьи необходимо авторизоваться');
}

$blog = Blog::query()->find($id);

if (! $blog) {
abort(404, 'Данной статьи не существует!');
}

if ($blog->user_id !== getUser('id')) {
abort('default', 'Изменение невозможно, вы не автор данной статьи!');
}

if (Request::isMethod('post')) {

$token = check(Request::input('token'));
$cid = int(Request::input('cid'));
$title = check(Request::input('title'));
$text = check(Request::input('text'));
$tags = check(Request::input('tags'));

$category = Category::query()->find($cid);

$validator = new Validator();
$validator
->equal($token, $_SESSION['token'], 'Неверный идентификатор сессии, повторите действие!')
->length($title, 5, 50, ['title' => 'Слишком длинный или короткий заголовок!'])
->length($text, 100, setting('maxblogpost'), ['text' => 'Слишком длинный или короткий текст статьи!'])
->length($tags, 2, 50, ['tags' => 'Слишком длинные или короткие метки статьи!'])
->notEmpty($category, ['cid' => 'Категории для статьи не существует или она закрыта!']);

if ($category) {
$validator->empty($category->closed, ['cid' => 'В данном разделе запрещено создавать статьи!']);
}

Господин ПЖ
0
Николай, так тебе что нужно поменять если действие при клике то это в js
если саму картинку или цвет, там рядом файл style.css лежит, в нем поменяй цвета в квардратиках

Добавлено через 04:11 сек.
Николай, можешь там сверху сделать var_dump($blog->user_id, getUser('id')); над if ($blog->user_id !== getUser('id')) {
Н

Пацак
0
@FarTovuY, так тебе что нужно поменять если действие при клике то это в js
если саму картинку или цвет, там рядом файл style.css лежит, в нем поменяй цвета в квардратиках
прописал скрин
Добавлено через 04:11 сек.
Николай, можешь там сверху сделать var_dump($blog->user_id, getUser('id')); над if ($blog->user_id !== getUser('id')) {
@Vantuz (Сегодня / 13:31)
Прикрепленные файлы:

Господин ПЖ
0
Николай, это нужно разбираться почему у тебя модель возвращает stringовое значение для поля с типом int
Н

Пацак
0
@FarTovuY, это нужно разбираться почему у тебя модель возвращает stringовое значение для поля с типом int
@Vantuz (Сегодня / 16:14)
Не могу знать, честно я там даже не лазил. До того пока ты не сказал посмотреть там.

Господин ПЖ
0
Николай, скинь от фтп данные, я сам посмотрю, так быстрее будет
Н

Пацак
0
Я тебе кидал посмотри сообщение от меня)

Господин ПЖ
0
В общем я посмотрел, это все из-за драйвера mysql
нужно использовать mysqlnd у тебя там другой стоит и настройки pdo на него не влияют
Решить можно 3 способами
1. перейти на нативный драйвер mysqlnd
2. с помощью cast полей, это в модели нужно всем полям указать что число, что строка итд
3. использовать не строгое сравнение == вместо ===

на 1 способ я повлиять не могу, а второй требует времени, буду прописывать в движке
Н

Пацак
0
В общем я посмотрел, это все из-за драйвера mysql
нужно использовать mysqlnd у тебя там другой стоит и настройки pdo на него не влияют
Решить можно 3 способами
1. перейти на нативный драйвер mysqlnd
2. с помощью cast полей, это в модели нужно всем полям указать что число, что строка итд
3. использовать не строгое сравнение == вместо ===

на 1 способ я повлиять не могу, а второй требует времени, буду прописывать в движке
@Vantuz (Сегодня / 02:22)
Будем тогда ожидать второй способ.
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск