За последние 24 часа нас посетили 22138 программистов и 1055 роботов. Сейчас ищут 590 программистов ...

Отправляю форму, а браузер блокирует, т.к. в ней код HTML!?

Тема в разделе "PHP для новичков", создана пользователем Атм_Евгений, 14 авг 2017.

  1. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Здравствуйте! У меня следующая проблема:
    В textarea написал код html с тегами, все как положено. Отправляю все это в БД, но браузер блокирует, выдает: Браузер обнаружил на этой странице необычный код и заблокировал его, чтобы защитить ваши данные (например, пароли, а также номера телефонов и банковских карт). Пробовал в Опере - там все нормально проходит. Хром тоже блокирует, выдает это же сообщение. Вот как отправить код html с "треугольными скобками" - < и > через форму? Есть какой нибудь тег или символ, внутри которых код не изменяется, как функцией htmlspecialchars, а остается неизменным со всеми знаками, но не блокируется...?
     
  2. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.554
    Симпатии:
    1.754
    Ни разу такого не было, смотрите настройки вашего браузера. Хотя, может код HTML специфический у вас
     
  3. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    В Опере нормально все, а Хром и Яндекс блокируют.
     
  4. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Впервые слышу, чтобы Хром так умел. Разве что, у вас в тексте запроса есть символы, ломающие синтаксис самого запроса. Так, к примеру, амперсанд "&" на раз ломает и POST-ы и GET-ы. Прогоняйте все через urlencode, а потом на сервере декодируйте в обратку. Мб поможет. А мб проблема еще где-то в другом месте.
     
  5. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Методом исключения дошел: в textarea записываю код:
    Код (Text):
    1. <form action="file_formdata.php" method="POST" name="name_form">
    2. <fieldset>
    3. <legend> Ввод личных данных </legend>
    4. <label for="for_text">Введите имя: </label>
    5. <input type="text" name="name_text" id="for_text" size="50" maxlength="30">
    6. <label>Введите пароль: <input type="password" name="name_password" size="50" maxlength="30"></label>
    7. </fieldset></form>
    Вот здесь и происходит блокировка браузером.
    Дело в том, что мне нужно отправить в БД в таком виде, т.е. со всеми тегами и прочее.
    Каким образом записанный в textarea код можно прогнать через urlencode при отправке в БД?
     
  6. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    А что за движок используется? Может это какой-то загон платформы, на которой работаете? А на некоторых браузерах он просто ломается и не работает? Ну не должен браузер ругаться на такое. Ему пофигу должно быть. Это текстареа же.

    Через JS. Перехватить событие отправки формы, сделать urlencode, инициировать отправку измененных данных.
     
  7. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Да сам химичу, делаю для себя что то удобной формы для занесения инфо в БД. На Опере работает, на Хроме и Яндексе блокирует. JS еще и не начинал изучать. Напишу ка в техподдержку яндексу!)
     
  8. Sergey_Tsarev

    Sergey_Tsarev Активный пользователь

    С нами с:
    17 мар 2016
    Сообщения:
    502
    Симпатии:
    105
    @Атм_Евгений, ssl-сертификат установлен?
    --- Добавлено ---
    Мне помог вот такой заголовок:

    PHP:
    1. header('X-XSS-Protection: 1');
    Мне кажется, что проблема вот в этом поле. Попробуй его убрать и проверь будет ли повторяться ошибка.

    HTML:
    1. <input type="password" name="name_password" size="50" maxlength="30">
     
  9. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    Можешь все же скриншот прикрепить сообщения о блокировки, просто впервые слышу об этом, так как через textarea и шеллы легко заливаются).
    Хоть узнать кто какую ошибку выдает
     
  10. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
     

    Вложения:

  11. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Методом исключения нашел проблемное слово в строке:
    Код (Text):
    1. <form action="file_formdata.php" method="POST" name="name_form">
    И это слово - action! Удаляю слово или хоть одну букву из него и все работает.
    Никто не знает что может быть и как решить (заголовок header... не помогает)?
     
    #11 Атм_Евгений, 16 авг 2017
    Последнее редактирование: 16 авг 2017
  12. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    Хех оишбки браузера, дело не в коде.
    сам браузер ругается.
    Перед отправкой данных, закодируй через js в base64
    а потом там где принимаешь данные декодируй
    из base64 и добавляй куда хочешь