Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Повторное отбражение введенного текста в форму

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: При остановке скрипта отображается текст не так как вводил
yuriy188
Отправлено: 30 Ноября, 2014 - 14:48:38
Post Id


Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Июль 2014  


Помог: 0 раз(а)




Есть скрипт с формой ввода информации, которая потом отправляется в таблицу mysql
Пример кода ввода текста :


<tr>
<td align="right"><span class="ch">Текст </span>
</td>
<td style="padding-left:20px;">
<textarea id="ob_text" class="bginp2" onFocus="inputBG(this,1)" onBlur="inputBG(this,0)" name="ob_text" rows="15" style="width:410px;"><? echo $ob_text ?></textarea>
<input type="hidden" name="mestoxy">

</td>
</tr>

Обрабатываем
$ob_text = globper('ob_text');

и заносим в таблицу

Проблема вот в чем, если не заполняется одно из обязательных данных в форме выводим ошибку о не заполнении и останавливаем скрипт, там где данные заполнялись с абзацами выводятся в сплошную строку с метками на абзац например:

Вводим:
Иванов Иван Иванович
Москва
Ленина 188

После остановки отображается:
Иванов Иван Иванович\r\nМосква\r\nЛенина 188

Помогите пожалуйста новичку как сделать чтобы отображалось то что ввел изначально
(Добавление)
Может проблема в функции globper?

function globper($a)
{
if (isset($_REQUEST[$a])) { $per = $_REQUEST[$a];
$per = trim($per); $per = htmlspecialchars($per);
$per = mysql_real_escape_string($per); return $per;}
else { return null; }
}
(Добавление)
Все решил вопрос простым POST без функции

$ob_text = $_POST['ob_text'];
 
 Top
kotyara1979
Отправлено: 01 Декабря, 2014 - 03:46:15
Post Id


Частый гость


Покинул форум
Сообщений всего: 247
Дата рег-ции: Окт. 2012  


Помог: 7 раз(а)




Не самое правильное отказываться от обработки входящих данных, мало ли что вам отправят пользователи.

Хотя если вы используете 'prepare' обращения к базе данных, то не беда.


-----
Сделать можно все. Главное одеть каску.
 
 Top
DeepVarvar Супермодератор
Отправлено: 01 Декабря, 2014 - 07:47:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




kotyara1979 пишет:
Хотя если вы используете 'prepare'

Всеравно ничем не поможет, т.к.:
PHP:
скопировать код в буфер обмена
  1. $ob_text = '<script>alert("XSS!");</script>';
 
 Top
yuriy188
Отправлено: 02 Декабря, 2014 - 14:26:24
Post Id


Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Июль 2014  


Помог: 0 раз(а)




DeepVarvar пишет:
kotyara1979 пишет:
Хотя если вы используете 'prepare'

Всеравно ничем не поможет, т.к.:
PHP:
скопировать код в буфер обмена
  1. $ob_text = '<script>alert("XSS!");</script>';



Я решил вопрос по другому, пока пользователь без ошибок не заполнит форму использую

$ob_text = $_POST['ob_text'];
потом если ошибки отсуствуют

$ob_text = globper('ob_text'); и отправляю данные в таблицу
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB