Roman
и сразу axios смотрите. там plug and play и хороший код.
хочешь ещё напрячь ребят сборкой фронтенда?
Максим
хочешь ещё напрячь ребят сборкой фронтенда?
за принуждение к самоубийству статья есть вроде)
Tim
хочешь ещё напрячь ребят сборкой фронтенда?
нет) хочу чтоб в дебри js не лезли для решения простых задач)
Алексей
Испробуем аякс
если прям совсем у вас сложно всё, я бы предложил вам попробовать дедовским методом, отправлять форму на скрипт, с перезагрузкой страницы, потом аякс попробуйте.
Ayubkhon
😄
Алексей
Испробуем эти три метода и отпишусь о результате
не не, отписываться не надо. Пишите если проблемы.
Алексей
Испробуем эти три метода и отпишусь о результате
И не забывайте что этот чат по вопросам связанным с фреймворком Yii, по вопросам PHP чат t.me/phpclubru
Anonymous
И когда я все это успеваю...
Алексей
И когда я все это успеваю...
воу воу, это они зря.
Максим
Бля, я даже здесь забанен
все, тогда не подпишусь. нахер надо
Anonymous
Ща разберусь
Anonymous
Не кароче, фуфел какой-то, не вступаем пацаны!
Anonymous
ну так php же
Согласен
Anonymous
Шок какой-то
Anonymous
Везде в бане...
👀
Привет всем! Подскажите: была необходимость назначать роль пользователю в зависимости от того, через какую форму он авторизовывается. Сделал на основе DbAuthManager SessionAuthManager, переопределил методы assign, getAssignment, getRolesByUser, revoke, revokeAll что-б хранило в сессии. Локально всё работает идеально - на проде проблемы. Разница только в версиях пхп (локально 7.2, когда на проде 5.5, но это лишь часть проблемы). Суть в том, что после авторизации пользователя "мгновенно" разлогинивает: переходишь на другую страницу - страница авторизации. Заметил, что при использовании моего authManager'а не записываются права в debug панели user - начал копать в эту сторону. Дебажил метод save() панели - словил в нём ошибку session_set_cookie_params(): Cannot change session cookie parameters when headers already sent. Отключил на проде панель пользователей - разлогинивать перестало. Что за магия такая?
Aleksey
Привет всем! Подскажите: была необходимость назначать роль пользователю в зависимости от того, через какую форму он авторизовывается. Сделал на основе DbAuthManager SessionAuthManager, переопределил методы assign, getAssignment, getRolesByUser, revoke, revokeAll что-б хранило в сессии. Локально всё работает идеально - на проде проблемы. Разница только в версиях пхп (локально 7.2, когда на проде 5.5, но это лишь часть проблемы). Суть в том, что после авторизации пользователя "мгновенно" разлогинивает: переходишь на другую страницу - страница авторизации. Заметил, что при использовании моего authManager'а не записываются права в debug панели user - начал копать в эту сторону. Дебажил метод save() панели - словил в нём ошибку session_set_cookie_params(): Cannot change session cookie parameters when headers already sent. Отключил на проде панель пользователей - разлогинивать перестало. Что за магия такая?
HTTP протокол. После Headers идет 2 символа новой строки и body. Чтобы выставить cookie нужно записаться в headers, ты пытался писать cookie после того, как начал выводить в body
NVlad
Привет всем! Подскажите: была необходимость назначать роль пользователю в зависимости от того, через какую форму он авторизовывается. Сделал на основе DbAuthManager SessionAuthManager, переопределил методы assign, getAssignment, getRolesByUser, revoke, revokeAll что-б хранило в сессии. Локально всё работает идеально - на проде проблемы. Разница только в версиях пхп (локально 7.2, когда на проде 5.5, но это лишь часть проблемы). Суть в том, что после авторизации пользователя "мгновенно" разлогинивает: переходишь на другую страницу - страница авторизации. Заметил, что при использовании моего authManager'а не записываются права в debug панели user - начал копать в эту сторону. Дебажил метод save() панели - словил в нём ошибку session_set_cookie_params(): Cannot change session cookie parameters when headers already sent. Отключил на проде панель пользователей - разлогинивать перестало. Что за магия такая?
у тебя где-то происходит вывод данных перед установкой куки, как вариант перед открывающим <?php в панели пользователя затесался пробел или другой символ. а проблемы из-за того, что разные настройки буферизации вывода
The Ant
Везде в бане...
поработай над собой дружище
Андрей
гайз, есть модальное окно ассет з js и сss. Проблема в том, что при первом вызове окна, все ок, а если его закрыть и открыть еще раз, js уже не работает. При этом если js поместить просто в файл с вью, а не через ассет, то все ок оба раза. Плиз хелп
Андрей
да
Максим
ошибки в консоли появляются?
Андрей
нет
Максим
а сама модалка получает дисплей нон или удаляется из дома?
Максим
если через консоль модалку запустить, а не кнопкой, все работает? например $('.modal').modal();
Максим
аяксы какие нибудь гоняются между назжатиями кнопки?
Андрей
ну окно в норме
Андрей
цсс тоже в норме
Максим
а каким образом через ассет подключаешь код?
Андрей
та просто, по гайду
Максим
покажи код) по гайду понятие растяжимое
Андрей
`class DistributorTemplatesAsset extends AssetBundle { public $sourcePath = '@app/modules/globalCatalogs/assets/static'; public $css = [ "css/DistributorTemplates.css" ]; public $js = [ "js/DistributorTemplates.js" ]; public $depends = [ 'yii\jui\JuiAsset', 'yii\bootstrap\BootstrapAsset', ]; }`
Максим
чудеса на виражах)
Андрей
?)
Максим
?)
я не знаю, почему не работает)
Андрей
понял, спс
👀
@Apache02 @WildVampir не, у меня проблема в том, что вызывается Logger->flush(), который дёргает в панели user получение всех ролей и прав пользователя. В моём authManager'е роль хранится в сессии, поэтому когда панель UserPanel делает save(), в моём authManager'е дёргается \Yii::$app->session->get(), что в свою очередь (по длинной цепочке) дёргает внутри /yii/web/Session метод setCookieParamsInternal(), который пытается сделать session_set_cookie_params(). Да, данные отправляются - Logger->flush(), насколько я понимаю, уже после response дёргается
👀
логично
👀
я ж не говорю что данные не выводятся
👀
на трёх реквестах такая ошибка только на одном
👀
на том, который отвечает за отображение страницы
👀
если запрос был через ajax - ошибки нет
👀
BOM тут не при чём
👀
да, контент выводится - это проблема
👀
но как он может не выводиться, если логгер настроен отрабатывать после response?
NVlad
проверь вьюхи, скорее всего там и происходит описанная проблема
NVlad
желательно все подключаемые файлы
👀
у меня всё без bom
👀
я на linux сижу
👀
тут ещё надо постараться с bom сделать
👀
👀
я гифку записал
👀
на /jobs падает ошибка про сессии, для ajax экшнов никаких проблем
Aleksey
начни комментировать незначительные части логики, например render представления, локализуй место где выводится
👀
нашёл на гитхабе аналогичный кейс - пишут, что-то при логгировании ломает сессии. тут проблема не во вьюхах и логиках - нужно глубже смотреть. Сессия не должна инициализироваться в том месте - она ранее уже была инициализирована, до респонса. И проблема эта именно с логгером, а точнее - с лог панелью юзеров - если её отключить всё работает как часы и без ошибок
Konstantin
привет. в юи не шарю но надо разобраться. как юи резольвит контроллеры?
Konstantin
проект не мой но там везде 404 на всех роутах и понять не могу как отладить. есть какой то exception handler в конфиге, там проверяю есть ли класс (ну, дебаг по живому), но пишет что класс вовсе не загружен. function renderException($exception) { var_dump(class_exists(api\controllers\UserController::class)); // показывает false
Konstantin
хотя б куда копать расскажите
Konstantin
я понял что это настраивается в конфиге в urlManager
Gnevniy
Всем привет. Кто нибудь знает как в gridview Убрать из таблицы ненужные строки по условию? Именно в самом виджете а не в запросе и не в объекте dataProvider
Stas
visible
👻
В модели отфильтруй
Stas
погугли
Stas
В модели отфильтруй
так он же говоирт что не в дата
👻
Не дочитал :)
👻
Про визибл хз но если не в провайдере будет как минимум педжинация ломатся
Gnevniy
@ASYOU99 СпасибО!