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]   

> Без описания
MikaBi
Отправлено: 22 Июля, 2014 - 21:21:49
Post Id


Новичок


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


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




Всех приветствую. Я сейчас видимо задам вопрос ну уж совершенно для учеников младших классов, но все же, ответьте если не затруднит.
Итак, есть форма, которая передает некие данные: заголовок сообщения, форум для которого это сообщение предназначено, текст самого сообщения и ник сообщение отправившего.
Само-собой, прежде чем пихать это все в БД мне нужно обработать эти данные, обрабатываю я их следующим образом: stripslashes,html_entity_decode,strip_tags,mysql_real_escape_string.

Очень не хочется писать повторяющийся код для каждой переменной, да и вообще не по людски это. По этому я создаю массив с переменными и желаю прогнать его через цикл, обрабатывая каждую переменную и перезаписывая уже новое значение.

Но поскольку содержимое массива это не сами переменные, а ссылки на них, то у меня ничего не получается...переменные остаются не обработанными, я пытался сделать что-нибудь с "&", но безрезультатно.

Вроде же элементарная задача, но вот никак..подскажите? Вот код:

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $data = array($fname,$threadAutor,$newPostTitle,$newPostText);
  3. for ($i=0; $i < count($data) ; $i++) {
  4.        
  5.         $data[$i]=stripslashes($data[$i]);
  6.         $data[$i]=html_entity_decode($data[$i]);
  7.         $data[$i]=strip_tags($data[$i]);
  8.         $data[$i]=mysql_real_escape_string($data[$i]);
  9.  
  10.         echo <<<HERE
  11. <b>$fname</b>
  12. $threadAutor<br>
  13. $newPostTitle<br>
  14. $newPostText<br>
  15. HERE;
  16. }
  17.  


Спасибо.
(Добавление)
Боже мой, какой я лапоть.. все же так просто:


$data = array(&$fname,&$threadAutor,&$newPostTitle,&$newPostText);


Даже не знаю, можно удалить пост? Или пусть остается, вдруг у кого-то возникнит подобный вопрос...
 
 Top
DelphinPRO
Отправлено: 22 Июля, 2014 - 22:59:07
Post Id



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


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


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




в php есть прекрасная конструкция foreach
обязательно обратите на нее внимание


-----
Чем больше узнаю, тем больше я не знаю.
 
 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