ничего не говорит. Ошибки нет.Если ошибки нет, то и работать должно, а у вас, я так понимаю, не работает (хотя что у вас при этом происходит вы почему-то молчите). Смотрите verbose расшифровку подключения. Вполне возможно ошибка связана с локальным сертификатом. Но это все гадание, без расшифровки нет смысла говорить о чем либо.
Это такой простой способ.Способ нормальный, просто к искусственному интелекту это относится так же как табличка экселя с 2 формулами - то есть никак. Тупо статистика в самом примитивном виде.
Мне просто интересно, а можно сделать это как то лучше?Конечно можно, просто понадобится непропорционально больше усилий на получение незначительного улучшения, например еще учитывать длительность просмотра того или иного жанра, активность типа коментариев, лайков, рейтингования и прочие мелочи. Короче, для одного небольшого сайта практически нерентабельно, другое дело объемы ютуба, там все это работает и приносит лишнюю копеечку.
Если мы каждую секунду будем закидывать в бд какие то данные, а если пользователей будет много, допустим 1000 и более, не скажется ли это на производительности и как лучше в таком случае вообще собирать такие данные?Нет, если пользователей будет 1000, а кино в среднем около часа, то активность в плане записи в бд будет околонулевая, за 60 минут ~1000 действий, что примерно равно 1 действие в 3 секунды. Даже если активность будет в 10 раз больше, а пользователей тоже в 10 раз больше - активность в итоге будет около 100 действий за 3 секунды, или 30-40 действий в секунду, для нормальной структуры бд это вообще не нагрузка.
ini_set('error_reporting',E_ALL);
ini_set('display_errors', 1);
Претензий к его работе нет, все довольны и счастливы, но делалась в спешке,...
и теперь хочется проверить его "качественность".
если в html формах, js ajax их нельзя отправитьКроме хтмл и жс существует еще очень много окружений, способных отправить такие заголовки (самый простой пример - пхп или консольный курл). Чаще всего их (заголовки) используют для семантического разделения API "по намерению", то есть "удалить", "положить", "взять", "только заголовки" и т.д, в частности это применимо в рестфул апи.
хранение книг, которые вы прочитали/купили;Допустим хранить эти данные дольше чем открыт браузер? Или привязывать такие списки к пользователю? И как-то хранить пользователей... И еще миллион всякого, понятно что на уровне "задача в 3 действия" все решается 2 массивами, но на уровне реального приложения работы в тысячу раз больше.
...
Я просто создал массивы и подмассивы с необходимыми данными и всё. Что ещё нужно добавить?