Здравствуйте! У меня следующая проблема: В textarea написал код html с тегами, все как положено. Отправляю все это в БД, но браузер блокирует, выдает: Браузер обнаружил на этой странице необычный код и заблокировал его, чтобы защитить ваши данные (например, пароли, а также номера телефонов и банковских карт). Пробовал в Опере - там все нормально проходит. Хром тоже блокирует, выдает это же сообщение. Вот как отправить код html с "треугольными скобками" - < и > через форму? Есть какой нибудь тег или символ, внутри которых код не изменяется, как функцией htmlspecialchars, а остается неизменным со всеми знаками, но не блокируется...?
Впервые слышу, чтобы Хром так умел. Разве что, у вас в тексте запроса есть символы, ломающие синтаксис самого запроса. Так, к примеру, амперсанд "&" на раз ломает и POST-ы и GET-ы. Прогоняйте все через urlencode, а потом на сервере декодируйте в обратку. Мб поможет. А мб проблема еще где-то в другом месте.
Методом исключения дошел: в textarea записываю код: Код (Text): <form action="file_formdata.php" method="POST" name="name_form"> <fieldset> <legend> Ввод личных данных </legend> <label for="for_text">Введите имя: </label> <input type="text" name="name_text" id="for_text" size="50" maxlength="30"> <label>Введите пароль: <input type="password" name="name_password" size="50" maxlength="30"></label> </fieldset></form> Вот здесь и происходит блокировка браузером. Дело в том, что мне нужно отправить в БД в таком виде, т.е. со всеми тегами и прочее. Каким образом записанный в textarea код можно прогнать через urlencode при отправке в БД?
А что за движок используется? Может это какой-то загон платформы, на которой работаете? А на некоторых браузерах он просто ломается и не работает? Ну не должен браузер ругаться на такое. Ему пофигу должно быть. Это текстареа же. Через JS. Перехватить событие отправки формы, сделать urlencode, инициировать отправку измененных данных.
Да сам химичу, делаю для себя что то удобной формы для занесения инфо в БД. На Опере работает, на Хроме и Яндексе блокирует. JS еще и не начинал изучать. Напишу ка в техподдержку яндексу!)
@Атм_Евгений, ssl-сертификат установлен? --- Добавлено --- Мне помог вот такой заголовок: PHP: header('X-XSS-Protection: 1'); Мне кажется, что проблема вот в этом поле. Попробуй его убрать и проверь будет ли повторяться ошибка. HTML: <input type="password" name="name_password" size="50" maxlength="30">
Можешь все же скриншот прикрепить сообщения о блокировки, просто впервые слышу об этом, так как через textarea и шеллы легко заливаются). Хоть узнать кто какую ошибку выдает
Методом исключения нашел проблемное слово в строке: Код (Text): <form action="file_formdata.php" method="POST" name="name_form"> И это слово - action! Удаляю слово или хоть одну букву из него и все работает. Никто не знает что может быть и как решить (заголовок header... не помогает)?
Хех оишбки браузера, дело не в коде. сам браузер ругается. Перед отправкой данных, закодируй через js в base64 а потом там где принимаешь данные декодируй из base64 и добавляй куда хочешь