Как полагаю, текст выводится в браузер? Если так, то нужно указать кодировку через HTTP-заголовок Content-Type, а не надеяться на автодетект со стороны браузера.
В данной ситуации - стечение обстоятельств. Плагины выполняются под теми правами, под которыми на данном сайте работает PHP, если злоумышленник получил к нему доступ и сумел перезаписать .htaccess - точно также он может переписать и любой другой файл, доступный этому пользователю.
Тем не менее, против ботов, которые нацелены на перезапись .htaccess, переход на nginx спасёт, но против живого взломщика или более продвинутых ботов не поможет.
Михаил, много битых секторов, диск менять по гарантии или в мусорку, важные данные как можно быстрее забэкапить, если остались. Новый брать от другого производителя, ADATA редкостные бракоделы.
felix selivan, может быть и с другой стороны: блокирует почтовый провайдер подключения с хостинга, если на хостинге много спамеров. Проверьте также нахождение IP-адреса сервера в чёрных списках
c86ce8, какие-то дристаки писали эту документацию, не удивительно, что они допустили в примере кода ошибки. Посмотрите пример и напишите примерно то же самое по смыслу, но нормально.
Айнур Бирдин, для такого рода хэшей бесполезны радужные таблицы, они обычно солёные.
Попробуйте для одного и того же пароля несколько раз хэш сгенерировать, если хэши будут различаться, то там присутствует соль.
KarambyG, в сессиях нельзя хранить числовые ключи, как не странно (возможно, пошло с времён register_globals). Сделайте отдельный элемента для массива, а не перезаписывайте корень: