2014-12-09 4 views
0

У меня есть следующая проблема.PHP-форма escapes html-поле после отправки

Я использую форму для отправки текстового поля, которое содержит HTML-теги.

<div style="width:100%;display:block;float:left;"> 
    <p>Name: <strong>test</strong><br /> 
    Address: <strong>address</strong><br /> 
    Date:<strong> 09/12/2014</strong></p> 
</div> 

Однако, когда я отправить форму с помощью POST я получаю следующий результат:

div style=width:100;display:block;float:left; pName: strongΓΕΩΡΓΙΑ ΙΩΑΝΝΗΣ ΓΕΩΡΓΙΑΔΗ/strongbr/Address: strongΟΔΟΣ ΠΕΝΤΕΛΗΣ 110 , 15231 ΜΑΡΟΥΣΙ, Greece/strongbr/Date:strong 09/12/2014/strong/p /div 

PHP волшебные кавычки от

Когда я пытался, что на моей машине развития его работал отлично, но теперь, когда я переместил его на выделенный сервер, он не работает должным образом.

Не могли бы вы помочь?

+0

Что это значит, вы получаете этот результат. Вы хотите иметь заполненную текстовую область, где пользователь должен обновлять свои учетные данные? – vaso123

+0

Это не работает. Он возвращает тот же результат, что и проблема. – curiusX

ответ

0

Вы можете попробовать это:

Используйте htmlspecialchars($_POST['html'], ENT_QUOTES) и когда эхо его снова (из базы данных) использовать htmlspecialchars_decode($result['html'])

http://php.net/manual/en/function.htmlspecialchars.php

Если я использую:

<?php 
if(isset($_POST['send'])){ 
    $html = htmlspecialchars($_POST['html']); 
    echo $html; 
    echo htmlspecialchars_decode($html); 
} 
?> 
<form method="POST"> 
    <textarea name="html"> 

    </textarea> 
    <input type="submit" name="send" value="Send" /> 
</form> 

Он работает, так, может быть, это что-то с вашей базой данных?

+0

Это не работает. Он возвращает тот же результат, что и проблема. – curiusX

+0

@curiusX это работает, когда я отправляю форму в свой ответ (см. Обновленный ответ выше). Так может быть, это ваша база данных, которая вызывает проблемы? Вы избегаете значения столбца? – Refilon

+0

Yeap. Наконец я узнал, что был запущен контент-фильтр, который был загружен из файла .htaccess. Тем не менее, я проверил ваш ответ на другом сервере, и он работает, и в результате я приму ответ. – curiusX

Смежные вопросы