Подтверждаю. Если в одном из хуков синтаксическая ошибка, блокируются все хуки, которые должны выполнятся вслед за проблемным (хотя в них проблем нет).
Потому что вывод ошибок на экран - любимый инструмента хакеров. Когда ошибки выключены, хакеры этого инструмента лишены. Поэтому обычно ошибки выключают. И вы включайте только для отладки кода, а не на "всякий случай". Отладили код - выключайте.
Добавлю, что для упомянутых в статье настроек (даже если "все включено"), можно все равно получить белый экран.
Причина кроется в файле php.ini. Он может давить ошибки, даже если они включены в .htaccess. Я с таким только что столкнулся.
Если у вас есть доступ к php.ini, открываете его редактором и присваиваете следующим строчкам значения:
Код INI:
display_errors= On
display_startup_errors= On
Если нет - пишите в саппорт хостингу, чтобы эти значения подняли.
Временная мера - присвоить из скрипта локально. В самое начало скрипта пишем:
Эти команды будут работать не для всего сайта, а только для скрипта, в который этот код вставлен. Убедиться, что вывод ошибок включен/выключен, можно, поставив сразу после ini_set(); команду
Что вы загнались на миграторе? Сайт не игрушка, а изделие, или, если хотите, предприятие. Работает? Работает. Никому не придет в голову успешно работающее предприятие вдруг переориентировать с металлообработки в деревообрабатывающее направление. Или в легкую промышленность. Другие станки. Другой персонал. Другое сырье. Другой круг клиентов, Проще построить другой завод. Если вдруг на вашем металлобрабатывающем заводе вдруг понадобилась мебель, всегда можно заказать у производителей мебели. И построить небольшой цех по сборке мебели. Если на вашем сайте вдруг понадобился новый функционал - просто допишите. Или закажите. Сделайте новый сайт на двойке, наконец. Городить миграцию, с моей точки зрения, - крайняя глупость. Не стоит оно того. Все это, конечно, строго имхо.
Я по наивности вставил https://мойдомен.ru..... и тд. В ответ, при попытке получить токен, в обратку получал 400 ошибку. Танцы с бубном и курение мануалов продолжалось без результата, пока я не сообразил, что надо бы попробовать указать просто протокол http://, что привело к виктории.
Ютуб подключился по API и теперь посетители могут смотреть с моего сайта мультики, размещенные на Ютубе, за что Игорю огромное спасибо за замечательный компонент.
Но, имхо, следует предусмотреть в таблице cms_user_profiles дополнительное поле (например, с именем prohibition), которое будет содержать флаг запрещения наглецам менять аватар после первого же предупреждения. В вашем же файле avatardelete.php:
Код PHP:
$sql="UPDATE cms_user_profiles SET imageurl = '', prohibition = 1 WHERE user_id = '$userid'";
Естественно, перед изменением аватара сделать проверку, установлен ли флаг prohibition этого юзера. Если да, то никаких ему задниц или прочих интимных частей тела на аватаре))))
Спорить не буду. Иногда, при небольших поломках, стандартный скрипт действительно деревья восстанавливает. Но у меня полно примеров, того, что после нажатия на кнопку "Восстановить" сайт переставал работать.
Весь костыль, насколько я видел, заключается в том, что все NSLeft и NSRight переименовываются заново, в цикле. Что при этом происходит с логикой построения деревьев - один Святой Сервер знает))) Практика показала, что голову администратора сайта этот цикл не заменяет. Приходится юзать утилиту.
Иконка при ротации переключается модулем именно в момент перехода со страницы на страницу. Поскольку имя файла иконки поменялось, браузер берет картинку не из кэша, а подгружает с сервака. Я этот вопрос выяснил, перед тем, как писать модуль.
Хех))) точно такой фильтр я сделал в прошлом году, но работа принадлежит не мне. Зато от той работы у меня остался Генератор фильтра с помощью которого я и сделал фильтр Содержание)))
Мне приятно, что мои идеи востребованы и подвергаются улучшению. Хотя есть и более продвинутый вариант данной утилиты, которую модифицировал Lora. Называется "Садовод". "Садовод", кроме упомянутой таблицы, еще и рисует узлы дерева на "бумаге в клеточку". Там вообще все совершенно наглядно и сразу видно, что именно сбилось.
Еще есть мысль, что страховочная копия, создаваемая автоматически - это очень хорошо, но не следует забывать сделать дамп базы вручную, перед тем, как в ней что менять, курочить или исправлять. Все действия по исправлению базы вы делаете на свой страх и риск!
Неважно, в каком файле сделан хак, в модели или фронтэнде. Просто хак есть хак, то есть неизбежное зло) Рад, что все заработало. Главное, идея кому-то пригодилась.
Причина кроется в файле php.ini. Он может давить ошибки, даже если они включены в .htaccess. Я с таким только что столкнулся.
Если у вас есть доступ к php.ini, открываете его редактором и присваиваете следующим строчкам значения:
Временная мера - присвоить из скрипта локально. В самое начало скрипта пишем:
Если вдруг на вашем металлобрабатывающем заводе вдруг понадобилась мебель, всегда можно заказать у производителей мебели. И построить небольшой цех по сборке мебели. Если на вашем сайте вдруг понадобился новый функционал - просто допишите. Или закажите. Сделайте новый сайт на двойке, наконец. Городить миграцию, с моей точки зрения, - крайняя глупость. Не стоит оно того. Все это, конечно, строго имхо.
При настройках Ютуба (в настройках провайдера) в консоли разработчика при получении Client ID и Client secret требуется указать в поле Authorized redirect URIs урл, по которому будет возвращаться токен. Для этого в это поле надо вставить, согласно документации, адрес http://yousite.ru/admin/index.php?view=components&do=config&link=video&opt=get_youtube_access_token, где http://yousite.ru - адрес Вашего сайта.
Я по наивности вставил https://мойдомен.ru..... и тд. В ответ, при попытке получить токен, в обратку получал 400 ошибку. Танцы с бубном и курение мануалов продолжалось без результата, пока я не сообразил, что надо бы попробовать указать просто протокол http://, что привело к виктории.
Ютуб подключился по API и теперь посетители могут смотреть с моего сайта мультики, размещенные на Ютубе, за что Игорю огромное спасибо за замечательный компонент.
Но, имхо, следует предусмотреть в таблице cms_user_profiles дополнительное поле (например, с именем prohibition), которое будет содержать флаг запрещения наглецам менять аватар после первого же предупреждения. В вашем же файле avatardelete.php:
У нас полно сайтов на Первой Ветке. Данная утилита будет работать на всех, начиная с 1.10. 1
Не настаиваю, что надо юзать именно ее, но теперь и такая утилита у нас есть.
Удачи, друг Делтас.
Еще есть мысль, что страховочная копия, создаваемая автоматически - это очень хорошо, но не следует забывать сделать дамп базы вручную, перед тем, как в ней что менять, курочить или исправлять. Все действия по исправлению базы вы делаете на свой страх и риск!
2. Не спорю что меню удобнее, но как вы будете вносить изменения в данные, если нельзя первый пункт?
Видимо, это бзик Макстрона.
Дело за тобой, дружище.
Рад, что все заработало. Главное, идея кому-то пригодилась.