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]   

> Без описания
E-Pro
Отправлено: 30 Января, 2010 - 19:38:26
Post Id



Частый гость


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


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




В теории понимаю как сделать, что-то в практике не идет...
Есть функция к примеру <N> она может вызваться на странице раз пять, в ней передаются параметры id, их нужно собрать в массив и послать один запрос в базу, на выборку, чтобы каждый раз при вызофе функции по запросу не шло.
 
 Top
biperch
Отправлено: 30 Января, 2010 - 22:26:29
Post Id



Частый посетитель


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


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




Решил блеснуть
PHP:
скопировать код в буфер обмена
  1. class m {
  2.  
  3. var $id= array();
  4.  
  5. function n($k){
  6.  
  7. $this->id[]=$k;
  8. }
  9.  
  10. function go_to_db(){
  11.  
  12. $q="inset into table values(".$this->id[0].")";
  13. }
  14. }
 
 Top
Мелкий Супермодератор
Отправлено: 30 Января, 2010 - 23:46:35
Post Id



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


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


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




biperch, т.е. вы предлагаете все данные, кроме введённых первым - игнорировать? Улыбка

E-Pro, т.е. нужно организовать так, чтобы функция запросила данные, и потом обращалась к своему своеобразному кэшу? Ну тогда, например, так:
PHP:
скопировать код в буфер обмена
  1. class n {
  2. private $a = array();
  3. public function __construct($ids) {
  4. if (!empty($ids)) {
  5. $q = mysql_query("select id,...."); //тут уж сами определяйтесь, что передавать и как разбирать
  6. while ($r = mysql_fetch_assoc($q)) $this->a[ $r['id'] ] = $r;
  7. }
  8. }
  9. public function getarr($id) {
  10. return isset($this->a[$id]) ? $this->a[$id] : false;
  11. }
  12. }

(Отредактировано автором: 30 Января, 2010 - 23:49:54)



-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB