Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Если не будет советов, как что-то Ларавел-овское использовать - используй сокеты.
Он спросил, почему яблоко кислое, а вы ответили, что ласточки нынче высоко летают.
Неправда. Я ответил, почему яблоко кислое: сорт такой. Неуважаемые Вами домохозяйки не станут спрашивать, как подсластить кислое яблоко. Но Вы ж не домохозяйка. Вы умнее, ага.
"Дыру Винды" даже комментировать не буду, это совершенно глупый стереотип на уровне домохозяек.
Домохозяйки, кстати, подметили, что в Винде php работает от имени пользователя System.
но учитывая уровень некоторых админов они бы на *nix в жизни ничего не подняли бы. Имеет право на жизнь.
А вот это уже ближе к телу.
Это мой опыт, возможно у кого-то был другой опыт с виндой.
Всё не так плохо, когда Вы, так сказать, Artisan
То есть Вы один работаете с сервером и админ на нём. Конечно, нужен "грамотный подход", чтоб дыры Винды затыкать, ну и вот, как у лесного обитателя, что-то тормозит (уж не без этого, Винда всё-таки!) - но жить можно.
Но если команда разработчиков - тогда всё становится совсем плохо.
вы сами же начали. Как ответили - так и получили.
Я ответил,что нужно нужно подбирать технологии по назначению. А получил бакланство.
Это всё-таки разные вещи.
В общем, забудь о винде как сервере для своего проЁкта.
Да и вообще, с каких пор Windows не подходит для веб-разработки?
Перечитайте, для чего она не подходит. Как сервер. А если хочется именно на Винде работать, сочиняя свою нетленку - нужно человеку в его лес привезти системник, который уже не тянет офисную работу - и поднять на нём LAMP. Соединить их кабелем - и наслаждаться.
Но нет. Это как-то по-пиндосски, да? Будем растить кукурузу в Арктике, зимнюю олимпиаду проводить в субтропиках, воздевывать рис в безводном Крыму... А кто возразит - шутить про Большой театр. Смешно ведь. РЖУНИМАГУ
Неистово плюсую. Зачётный ответ.
Вам осталось перейти на язык падонкафф. Чтоб защитить святое право завинчивать винты ножом, а не отверткой.
Если б у меня была бы такая задача - я бы в мульти-селектном списке выводил бы сотрудников для импорта, и пользователь мог бы выбрать несколько сотрудников - и нажать кнопку "Импортировать". Получал бы ИД_компании (из скрытого поля, например) и массив ID выбранных сотрудников и запускал бы банальный запрос:
UPDATE Сотрудники SET company_id=ИД_компании WHERE id IN (список ID выбранных сотрудников через запятую)
Ну самый простой ответ - вместо поля сделать комбобокс, где выбиралась бы компания, в которой работает сотрудник. Всё ж не ID руками.
На а как более автоматически узнать, в какой компании работает вводимый сотрудник - это Вы должны нам рассказать.
- Слушайте, у меня же... у меня же ботинок пропал. Вы спрашивали - что-нибудь случилось? У меня же ботинок пропал.
- Сэр Генри, ваш башмак найдётся.
- Нет, я думал, может быть, интересно.
- Просто засунули куда-нибудь и всё.
- Нет, вы не подумайте, что мне жалко, джентльмены.
Просто я только вчера их купил на Стрэнде и даже ни разу не успел надеть. Выставил за дверь - и всё...
- Вы выставили за дверь... новые ботинки?
- Нет... Они были просто светло-коричневого цвета. Я не очень люблю этот цвет и поэтому оставил там записку, чтобы......их помазали чёрной ваксой. Ну, чёрные чтобы были.
- Но почему вы не купили чёрные ботинки?
Почему, сэр Генри?
- А что в этом странного? К чему вы клоните?
Что вы хотите этим сказать, доктор Ватсон?
Не понимаю вопроса. По-моему, уже лет 15 как все согласились, что использовать Windows как веб-сервер для работы приложений на php/MySQL - извращение.
Винда - все-таки десктопная система. Чтоб человек работал за компом. В этом качестве - у Винды можно найти преимущества. Но сервер для работы php/MySQL... Да тот же ASP.NET глохнет даже не по причине собственно ASP.NET, а по причине того, что ты в винде или админ, или гуано. Ну и потому, что это одна большая дыра. Юзеру-то это скорее хорошо. Чем легче ему добираться до ресурсов своего компа - тем лучше
В общем, забудь о винде как сервере для своего проЁкта.
Зачем ждать? Скинь сложный запрос сюда, обсудим.
Сложных запросов пока нет. Появятся в феврале.
А пока всё банально. "Ученические" запросы идут. Обсуждать нечего.
Не верю, что после серьезного проекта захочется отказаться от ORM.
История нас рассудит
Но по сути "новые старые технологии" вполне себе имеют право на жизнь. Те же NoSQL просто отлично работают в качестве временного хранилища в памяти для неструктурированных данных типа сессий, кэша и т.п. Поэтому говорить, что возврат в 70-е это проблема - нельзя. Нового ведь ничего не придумать в области, которая уже устоялась.
Ну может, что-то ранее отвергнутое и работает сегодня отлично - в силу изменившихся обстоятельств. Может, эти временные хранилища и отлично работают (я, правда, не понял, в чём это отличие - но может, еще пойму в ходе поддержки проекта, который использует Redis).
Но когда откровенно провозглашается, что нужно затупить хорошую вещь, чтоб людям было проще изучать - становится совсем грустно.
tmanager выполни серьезный проект на Laravel и полюбишь OOP/ORM.
Не знаю, что Вы понимаете под "серьёзным проектом", но уверен: проект, который я ваяю, Вы не откажетесь считать серьёзным. К лету его планируется открыть для покупателей - похвалюсь. Тогда, надеюсь, моё мнение про ORM будет более веским.
По крайней мере "php artisan make: ..." не вызывает ужаса
)
А вызывал?
Никто не запрещает использовать традиционные для реляционной БД методы.
Так уж никто. Вон hzone за них увольняет
Ну а если серьезно. Я за эти два месяца как-то уже втянулся: пишу, чертыхаясь, эти новомодные конструкции. Разобрался в них - ума там большого не надо. Так что уже ничего личного - просто немного жаль того настроения, с которым я начинал работать в IT. Как-то радостно было: появляются все новые и новые технологии, которые лучше и эффективнее прежних. И радостно было узнавать: что новенького?
А сейчас как-то и не хочется новости читать - не хочется узнавать, что еще решили затупить, где еще решили вернуться в 70-е.
Легко учиться, когда знаешь и веришь, что это путь наверх. К свету от тьмы, если возвышенно выражаться. Мой тренер по киокушину вдвое моложе меня - но я признаю, что он специалист, у которого нужно и полезно учиться.
А когда вдруг решили вернуться к иерархическим базам прошлого - то изучать эти обходы вложенных массивов как-то тоскливо. Обходишь с настроением, воспетым Тиной Тёрнер: I am private dancer, a dancer for money...
Я вот не понял, зачем одному пользователю несколько ролей? Ну это ладно, это разработчику виднее - хотя он сильно осложнил себе жизнь. И не только связью "многие-ко-многим", это-то рутина. А шизофреничностью назначения прав. Менеджеру нельзя, бухгалтеру можно, а если он и менеджер и бухгалтер - ему можно или нельзя?
Не проще сделать НОРМАЛЬНЫЙ набор ролей? Если ты главбух - ну и заходи как главбух, а не скрещивай менеджера с бухгалтером.
Но что совсем удручает - какие-то джсон-массивы. Одним банальным SQL-запросом эта задача решается. Кинул запрос - и вуяля: получил права, сиди теперь разрешай конфликты между ними
Но нет. Теперь так нельзя. Нельзя писать запрос и получать ответ. Надо получать массивы в три этапа...
Пойду стакан накачу...
Вот и прекрасно. И мне полезный опыт: я рано или поздно заюзал бы dump() и тоже бился бы...
Я поставил Ваш проект себе - и всё повторилось, как Вы описали.
Но вот что я потом сделал:
Изменил контроллер таким образом:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class IndexController extends Controller
{
public function index(Request $request)
{
$result = $request->session()->all();//получаем данные из сессии
$token = $result['_token'];
return view('index',['token'=>$token]); //передаём данные в шаблон
}
}
А в view вставил эту переменную
{{ $token }}
Так вот: стоит токен как впаянный при всех перезагрузках.
Похоже, функция dump() Вам подгадила. Какой-то странный ЯваСкрипт она добавляет. Который, похоже, что-то открывает через Аякс - и соответственно, открывает новую сессию и получает новый токен.
Если эта информация Вам не помогла - сорри, я свой лимит исчерпал. Ушел работать.
Прости, нет возможности сейчас всё это громоздить себе и искать ошибку. Но на первый взгляд - просто не передаётся идентификатор сессии через cookie.
Не помешает проверить две вещи:
- включены ли в браузере куки
- изучи-ка файл КаталогПроекта/config/session.php
нет ли там чего-то вроде
'expire_on_close' => true,
Если эти проверки не дадут результата - я смогу подключиться завтра/послезавтра
В директиву Апача DirectoryIndex добавь index.php
Что бросается в глаза - у селекта нет имени. Город не будет никуда передан.
Ларавел 5.3. работает. Там в файле
\vendor\laravel\framework\src\Illuminate\Encryption\Encrypter.php
нет этой функции.
Получается - перетаскивать проект на 5.3 если не найду менее радикального варианта.
А как-то можно уговорить проект на Ларавеле хоть этот десяток лет поработать?
Зачем падать-то из-за Депрекейтеда?
Забыл написать - я выставил для php
error_reporting = E_ALL & ~E_DEPRECATED
Версия Laravel:
4.2.17
Версия PHP:
7.1.0
Операционная система и её версия:
Windows 10
Вендор и версия сервера БД:
MySQL 5.7.16
Вендор и версия Веб-сервера:
Apache 2.4.23
Медод подключения PHP:
Модуль Апача
Задача, что должно происходить _в целом_, техническое задание:
Сайт должен работать штатно - как работал до переустановки php
Что произошло, текст ошибки, если есть:
ErrorException (E_DEPRECATED)
Function mcrypt_get_iv_size() is deprecated
Чего вы ожидали получить:
Нормальную работу функции mcrypt_get_iv_size()
Варианты/догадки, почему это произошло:
Баг php:
https://bugs.php.net/bug.php?id=73734
* * *
Может, кто знает, как забороть?