Laravel по-русски

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

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

#1 Re: Laravel 5 » Проверить, снят ли номер на данный диапозон дат. » 17.03.2019 09:01:18

Тут нюанс именно в способе представления даты "По". Когда человеку надо одну ночь переночевать, он указывает, что номер нужен с пятницы по субботу, например. Это одна ночь, а форме ввода оно выглядит как две разные даты. При этом хранить в базе такие периоды удобно как две одинаковые даты.

Надеюсь понятно сформулировал sad

#2 Re: Laravel 5 » Проверить, снят ли номер на данный диапозон дат. » 17.03.2019 08:56:46

Нормальный вопрос. При попытке бронирования надо проверить номера на выбранном периоде.
Если период включает в себя границы, то можно так сформулировать:
Два периода A-B и X-Y пересекаются если
X <= B and Y >= A
Условие через И удобнее оптимизировать индексами.

И возвращаясь к вопросу ТС

может есть более компактное решение

Да, условие через И в eloquent пишется в один вызов:

 ->where([['d_from', '<=', $d2], ['d_to', '>=', $d1]]) 

#3 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 15.03.2019 14:07:10

Ты не выполнил / выполнил с недостаточными правами / в неправильном месте. Сам же видишь разницу в правах на локальном и удаленном месте.

Значит изначально там и было 644 и это может объяснить проблему с деплоем. Я только не понял почему ты писал, что всё работает, если зайти как laradeploy.

Извини, я не буду дальше продолжать. Всё, что считал нужным по теме, я уже написал.

#4 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 17:04:24

Блин, это опечатка. Ключ -R, а не +R. Сейчас мне уже не даёт редактировать страницу.
Выполнять на том компе, с которого давал листинг ))) А на том на который деплоишь - то же самое, только пользователь lardeployer, а не serge.

#5 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 14:50:59

для уверенности попробуй как супер-пользователь:

chown +R serge:serge .ssh/
chmod 0600 .ssh/*
chmod 0700 .ssh

#6 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 14:46:55

У тебя почему-то authorized_keys принадлежит не пользователю, а руту. и ты был вынужден выставить больше доступа, это неправильно.

В инструкциях к AWS пишут про 400 для приватного ключа, но реально примет и 600.
Публичный ключ незачем прятать, само наличие его здесь ни на что не влияет.

#7 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 14:40:53

Ну вроде как приватный ключ должен быть 0400, authorized_keys 0600, а папка .ssh 0700 smile
Ты же проверил, если ты можешь войти как нужный пользователь и от его имени можешь соединиться дальше с bitbucket, то вроде тот удалённый хост принял доступы.

Или таки нет?

#8 Re: Прочее » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 11:14:44

А ты пробовал не переключаться на пользователя через su, а открывать консоль сразу им? Это будет ближе к тому, что происходит через envoy.

#9 Re: Laravel 5 » дата в ларавел из БД » 14.03.2019 07:21:46

Поле позволяет хранить null? В старых версиях MySQL было возможно сохранять дату-время в не-нуллабл полях как строку с из нулей, сейчас так нельзя, насколько я знаю. Лучше преобразовать такое в null и обрабатывать соответственно.

https://laracasts.com/discuss/channels/ … 0000-value
https://stackoverflow.com/questions/489 … in-laravel
https://github.com/laravel/nova-issues/issues/957

#10 Re: Laravel 5 » Новая сессия при обновлении страницы. » 08.03.2019 21:32:31

Инспектор браузера/Network и исходный код страницы по Ctrl+U (Cmd+U) - вот где надо искать. и уже потом в исходниках php.

#11 Re: Laravel 5 » Новая сессия при обновлении страницы. » 08.03.2019 11:01:18

Перенес на другой хостинг и все заработало.

теперь я с 90% уверенностью вангую, что дело в Headers already sent. на одном хостинге всеобщая буферизация включена, на другом нет.
или на одном толерантность к ошибкам бесконечная, на другом нет. поэтому в одном месте косяки критичны, в другом нет.

еще раз: проблема с сессионной кукой. эта проблема - следствие какой-то другой ошибки, которая вызывает внезапный вывод лишнего текста в поток. прятать ошибку значит откладывать решение проблемы, а не решать её.

#12 Re: Laravel 5 » Использование глобальных scope » 06.03.2019 21:23:17

Глобальный скоуп называется так, потому что он [ по умолчанию ] применяется ко всем запросам данной модели.

Да, чтобы применить один скуп к двум моделям, надо вставить его в обе модели smile Он и так один раз описан в отдельном классе. Ты просто применишь экземпляр этого класса в двух моделях.

#13 Re: Laravel 5 » Новая сессия при обновлении страницы. » 05.03.2019 06:24:24

Например, https адрес и при это несекурная сессионная кука могут не сочетаться.

#14 Re: Laravel 5 » Новая сессия при обновлении страницы. » 05.03.2019 06:23:23

В инспекторе браузера проверь какие заголовки в ответе (response Headers).
В настройках проверь app.url и session.secure.

#15 Re: Laravel 5 » Новая сессия при обновлении страницы. » 05.03.2019 06:21:11

Такое может происходить, если сессионная кука не доходит до браузера - пресловутый Headers already sent - то есть что-то, например текст предупреждения, был выведен в поток раньше, чем заголовок куки.

Смотри в тело страницы и ищи там ошибки. Исправишь одно, исправится и другое.

#16 Re: Laravel 5 » Распарсить ответ сервера SOAP » 02.03.2019 09:46:31

Лучше всего пользоваться высокоуровневыми библиотеками, а не парсить всё самостоятельно. Существует SoapServer для такой работы.
Проверить, что расширение PHP установлено и класс доступен:

$ php -r 'var_dump(class_exists("SoapServer"));'
bool(true)

Пример "слушателя", работающего через SoapServer я нашел здесь:
https://github.com/eBayDeveloper/eBay_A … Sample-PHP

Пример не не использует Laravel или другой фреймворк, но это не меняет дела. Просто здесь в качестве "маршрута" используется буквально скрипт в файловой системе, а у тебя будет роутинг средствами фреймворка. Дальше всё также.

#17 Re: Общий раздел » Не видин файл .env в mac os » 02.03.2019 09:17:11

Это стандарт мира Unix: файлы, начинающиеся с точки считаются "скрытыми". Mac OS основан на BSD Unix, поэтому унаследовал такое поведение. Нет причин для беспокойства - ты знаешь, что файл есть, скрипты читают его. Я бы не назвал это "mac os не видит".

Для того чтобы показать/спрятать скрытые файлы в Finder, есть горячее сочетание клавишь Shift+Cmd+.
Чтобы показать все файлы в консольной команде ls, используй ключ -a.

#18 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 01.03.2019 17:18:14

Упомянутую статью не читал, но полагаю, что деплой должен производиться от имени того же пользователя, от которого работает php на веб-сервере (php-fpm или mod_php). если там www-data, то пусть он и будет деплоить.
Иначе будет много боли.

#20 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 26.02.2019 11:28:21

"С помошью git комманд" — это в обработчике хука?

Есть специальные инструменты для описания сценариев развёртывания, как то: chef, ansible, puppet
По словам "Continuous Integration and Deployment" найдется еще десяток.
Не возьмусь говорить о преимуществах, т.к. недостаточно компетентен.

#21 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 26.02.2019 10:29:52

Лично я не вижу преимуществ в описании рутинных операций таким способом по сравнению со скриптами bash, например. ПМСМ это лишняя зависимость.

#23 Re: Laravel 5 » Как сделать отправку письма с новым паролем в Laravel? » 25.02.2019 13:26:37

#Views

Again, Laravel will generate all of the necessary views for password reset when the make:auth command is executed. These views are placed in resources/views/auth/passwords. You are free to customize them as needed for your application.

#25 Re: Laravel 5 » Переключение точек сбыта » 22.02.2019 13:31:55

Попробуем поиграть в реверс инжиниринг. Эльдорадо: пытается определить по IP какой у тебя регион. Но если ты выбрал сам, то он это запомнит, вероятно в сессии, (в куках я не нашел чего-то такого), а также в теле страницы вот такое упоминает чтобы скрипты могли прочитать:

<body data-region="che"
      data-regionsectionid="11298"
      data-regionID="6449940"
      data-semEnabledByRegion="1"
      class="innerPage sem">

В итоге, когда кликаешь "Адреса магазинов", то происходит переход на
https://www.eldorado.ru/info/shops/11298/ для Челябинска
https://www.eldorado.ru/info/shops/11297/ для Екатеринбурга
Уверен, что 11297 и 11298 являются значениями ключа в таблице филиалов.

Я ответил на твой вопрос?

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