За последние 24 часа нас посетили 17218 программистов и 1687 роботов. Сейчас ищут 1100 программистов ...

Вывод 100 пользовтаелей

Тема в разделе "PHP для новичков", создана пользователем raikage, 20 сен 2013.

  1. raikage

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

    С нами с:
    11 мар 2012
    Сообщения:
    48
    Симпатии:
    0
    Нужно вывести 100 пользователей, но что-то не получается

    mysql
    Код (Text):
    1.  
    2.     CREATE TABLE IF NOT EXISTS `vii_obshenie` (
    3.       `id` int(11) NOT NULL AUTO_INCREMENT,
    4.       `user_id` int(11) NOT NULL,
    5.       `text` text NOT NULL,
    6.       `date` int(11) NOT NULL,
    7.       PRIMARY KEY (`id`)
    8.     ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
    9.    
    Вывожу так.

    Код (Text):
    1.  
    2. $obshenie = $db->super_query("SELECT user_id,text FROM `".PREFIX."_obshenie` WHERE date>'NOW()-604800' order by id desc limit 100");
    3.  
    4. if($obshenie) {
    5.     $avatar_obshenie = $db->super_query("SELECT user_photo, user_search_pref FROM `".PREFIX."_users` WHERE user_id = '{$obshenie['user_id']}'");
    6.     $tpl->set('{avatar_obshenie}', '<a href="id'.$obshenie['user_id'].'"><img src="http://social.delpgame.ru/uploads/users/'.$obshenie['user_id'].'/100_'.$avatar_obshenie['user_photo'].'"/></a>');
    7.     $tpl->set('{name_obshenie}', '<a href="id'.$obshenie['user_id'].'">'.$avatar_obshenie['user_search_pref'].'</a>');
    8.     $tpl->set('{text}', $obshenie['text']);
    9.     $tpl->set('[obshenie]','');
    10.     $tpl->set('[/obshenie]','');
    11. } else {
    12.     $tpl->set_block("'\\[obshenie\\](.*?)\\[/obshenie\\]'si","");
    13. }



    В итоге выходить только 1 пользователь
     
  2. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    обычно для вывода кучи записей делают цикл вроде
    Код (Text):
    1. while ($row = mysql_fetch_assoc($result)) {
    2. // вывод
    3. }
    хз как это будет выглядеть с твоим классом БД. $db->super_query() это какой-то самопис. разбирайся.
     
  3. raikage

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

    С нами с:
    11 мар 2012
    Сообщения:
    48
    Симпатии:
    0
    вот в других местах как выводится

    Код (Text):
    1. //################### Вывод людей которые есть в закладках ###################//
    2.             $mobile_speedbar = 'Закладки';
    3.  
    4.             //Выводим кол-во людей в закладках
    5.             $user = $db->super_query("SELECT user_fave_num FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
    6.            
    7.             //Если кто-то есть в заклаках то выводим
    8.             if($user['user_fave_num']){
    9.            
    10.                 $user_speedbar = '<span id="fave_num">'.$user['user_fave_num'].'</span> '.gram_record($user['user_fave_num'], 'fave');
    11.                
    12.                 //Загружаем поиск на странице
    13.                 $tpl->load_template('fave_search.tpl');
    14.                 $tpl->compile('content');
    15.                
    16.                 //Выводи из базы
    17.                 $sql_ = $db->super_query("SELECT tb1.fave_id, tb2.user_search_pref, user_photo, user_last_visit, user_logged_mobile FROM `".PREFIX."_fave` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = '{$user_id}' AND tb1.fave_id = tb2.user_id ORDER by `date` ASC LIMIT {$limit_page}, {$gcount}", 1);
    18.                 $tpl->load_template('fave.tpl');
     
  4. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    безнадежен
     
  5. vikrorpert

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

    С нами с:
    13 окт 2010
    Сообщения:
    984
    Симпатии:
    10
    это пипец какойто
    похоже скрипт это dle
     
  6. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    raikage, а мы должны догадаться, какой у вас Framework или CMS?
     
  7. raikage

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

    С нами с:
    11 мар 2012
    Сообщения:
    48
    Симпатии:
    0
    да, это vii engine
     
  8. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    вобщем ищи в дле пример, где сразу после query есть цикл.
     
  9. raikage

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

    С нами с:
    11 мар 2012
    Сообщения:
    48
    Симпатии:
    0
    вот пример, помогите, в долгу не останусь


    PHP

    Код (Text):
    1. <?php
    2. /*
    3.     Appointment: Закладки
    4.     File: fave.php
    5.     Author: f0rt1
    6.     Engine: Vii Engine
    7.     Copyright: NiceWeb Group (с) 2011
    8.     e-mail: niceweb@i.ua
    9.     URL: http://www.niceweb.in.ua/
    10.     ICQ: 427-825-959
    11.     Данный код защищен авторскими правами
    12. */
    13. if(!defined('MOZG'))
    14.     die('Hacking attempt!');
    15.  
    16. if($ajax == 'yes')
    17.     NoAjaxQuery();
    18.  
    19. if($logged){
    20.     $act = $_GET['act'];
    21.     $user_id = $user_info['user_id'];
    22.    
    23.     if($_GET['page'] > 0) $page = intval($_GET['page']); else $page = 1;
    24.     $gcount = 70;
    25.     $limit_page = ($page-1)*$gcount;
    26.    
    27.     $metatags['title'] = $lang['fave'];
    28.    
    29.     switch($act){
    30.        
    31.         //################### Добвление юзера в закладки ###################//
    32.         case "add":
    33.             NoAjaxQuery();
    34.             $fave_id = intval($_POST['fave_id']);
    35.             //Проверяем на факт существования юзера которого добавляем в закладки
    36.             $row = $db->super_query("SELECT `user_id` FROM `".PREFIX."_users` WHERE user_id = '{$fave_id}'");
    37.             if($row AND $user_id != $fave_id){
    38.            
    39.                 //Проверям на факт существование этого юзера в закладках, если нету то пропускаем
    40.                 $db->query("SELECT `user_id` FROM `".PREFIX."_fave` WHERE user_id = '{$user_id}' AND fave_id = '{$fave_id}'");
    41.                 if(!$db->num_rows()){
    42.                     $db->query("INSERT INTO `".PREFIX."_fave` SET user_id = '{$user_id}', fave_id = '{$fave_id}', date = NOW()");
    43.                     $db->query("UPDATE `".PREFIX."_users` SET user_fave_num = user_fave_num+1 WHERE user_id = '{$user_id}'");
    44.                 } else
    45.                     echo 'yes_user';
    46.             } else
    47.                 echo 'no_user';
    48.            
    49.             die();
    50.         break;
    51.        
    52.         //################### Удаление юзера из закладок ###################//
    53.         case "delet":
    54.             NoAjaxQuery();
    55.             $fave_id = intval($_POST['fave_id']);
    56.  
    57.             //Проверям на факт существование этого юзера в закладках, если есть то пропускаем
    58.             $row = $db->super_query("SELECT `user_id` FROM `".PREFIX."_fave` WHERE user_id = '{$user_id}' AND fave_id = '{$fave_id}'");
    59.             if($row){
    60.                 $db->query("DELETE FROM `".PREFIX."_fave` WHERE user_id = '{$user_id}' AND fave_id = '{$fave_id}'");
    61.                 $db->query("UPDATE `".PREFIX."_users` SET user_fave_num = user_fave_num-1 WHERE user_id = '{$user_id}'");
    62.             } else
    63.                 echo 'yes_user';
    64.  
    65.             die();
    66.         break;
    67.        
    68.         default:
    69.        
    70.             //################### Вывод людей которые есть в закладках ###################//
    71.             $mobile_speedbar = 'Закладки';
    72.  
    73.             //Выводим кол-во людей в закладках
    74.             $user = $db->super_query("SELECT user_fave_num FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
    75.            
    76.             //Если кто-то есть в заклаках то выводим
    77.             if($user['user_fave_num']){
    78.            
    79.                 $user_speedbar = '<span id="fave_num">'.$user['user_fave_num'].'</span> '.gram_record($user['user_fave_num'], 'fave');
    80.                
    81.                 //Загружаем поиск на странице
    82.                 $tpl->load_template('fave_search.tpl');
    83.                 $tpl->compile('content');
    84.                
    85.                 //Выводи из базы
    86.                 $sql_ = $db->super_query("SELECT tb1.fave_id, tb2.user_search_pref, user_photo, user_last_visit, user_logged_mobile FROM `".PREFIX."_fave` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = '{$user_id}' AND tb1.fave_id = tb2.user_id ORDER by `date` ASC LIMIT {$limit_page}, {$gcount}", 1);
    87.                 $tpl->load_template('fave.tpl');
    88.                 $tpl->result['content'] .= '<table class="food_planner" id="fave_users">';
    89.                 foreach($sql_ as $row){
    90.                     if($row['user_photo'])
    91.                         $tpl->set('{ava}', $config['home_url'].'uploads/users/'.$row['fave_id'].'/100_'.$row['user_photo']);
    92.                     else
    93.                         $tpl->set('{ava}', '{theme}/images/100_no_ava.png');
    94.                    
    95.                     $tpl->set('{name}', $row['user_search_pref']);
    96.                     $tpl->set('{user-id}', $row['fave_id']);
    97.  
    98.                     OnlineTpl($row['user_last_visit'], $row['user_logged_mobile']);
    99.                    
    100.                     $tpl->compile('content');
    101.                 }
    102.                 $tpl->result['content'] .= '</table>';
    103.                 navigation($gcount, $user['user_fave_num'], $config['home_url'].'fave/page/');
    104.             } else {
    105.                 $user_speedbar = $lang['no_infooo'];
    106.                 msgbox('', $lang['no_fave'], 'info_2');
    107.             }
    108.     }
    109.     $tpl->clear();
    110.     $db->free();
    111. } else {
    112.     $user_speedbar = $lang['no_infooo'];
    113.     msgbox('', $lang['not_logged'], 'info');
    114. }
    115. ?>
    SQL

    Код (Text):
    1. --
    2. -- Структура таблицы `vii_fave`
    3. --
    4.  
    5. CREATE TABLE IF NOT EXISTS `vii_fave` (
    6.   `user_id` int(11) unsigned NOT NULL,
    7.   `fave_id` int(11) unsigned NOT NULL,
    8.   `date` datetime NOT NULL,
    9.   KEY `for_fast_select1` (`user_id`,`fave_id`,`date`)
    10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    Код (Text):
    1. --
    2. -- Структура таблицы `vii_users`
    3. --
    4.  
    5. CREATE TABLE IF NOT EXISTS `vii_users` (
    6.   `user_id` mediumint(11) NOT NULL AUTO_INCREMENT,
    7.   `user_design` varchar(250) NOT NULL,
    8.   `user_email` varchar(50) NOT NULL,
    9.   `user_password` varchar(32) NOT NULL,
    10.   `user_name` varchar(30) NOT NULL,
    11.   `user_lastname` varchar(30) NOT NULL,
    12.   `user_photo` varchar(255) NOT NULL,
    13.   `user_wall_id` int(11) NOT NULL,
    14.   `user_birthday` varchar(30) NOT NULL,
    15.   `user_sex` varchar(3) NOT NULL,
    16.   `user_day` varchar(3) NOT NULL,
    17.   `user_month` varchar(3) NOT NULL,
    18.   `user_year` varchar(4) NOT NULL,
    19.   `user_country` varchar(6) NOT NULL,
    20.   `user_city` varchar(6) NOT NULL,
    21.   `user_reg_date` varchar(20) NOT NULL,
    22.   `user_lastdate` varchar(20) NOT NULL,
    23.   `user_group` varchar(1) NOT NULL,
    24.   `user_hid` varchar(64) NOT NULL,
    25.   `user_country_city_name` varchar(100) NOT NULL,
    26.   `user_search_pref` varchar(60) NOT NULL,
    27.   `user_xfields` text NOT NULL,
    28.   `xfields` text NOT NULL,
    29.   `user_xfields_all` text NOT NULL,
    30.   `user_albums_num` smallint(6) NOT NULL,
    31.   `user_friends_demands` int(11) NOT NULL,
    32.   `user_friends_num` mediumint(8) NOT NULL,
    33.   `user_last_visit` varchar(15) NOT NULL,
    34.   `user_fave_num` mediumint(8) NOT NULL,
    35.   `user_pm_num` mediumint(8) NOT NULL,
    36.   `user_notes_num` mediumint(8) NOT NULL,
    37.   `user_subscriptions_num` mediumint(8) NOT NULL,
    38.   `user_videos_num` mediumint(8) NOT NULL,
    39.   `user_wall_num` int(11) NOT NULL,
    40.   `user_status` varchar(255) NOT NULL,
    41.   `user_privacy` varchar(250) NOT NULL,
    42.   `user_blacklist_num` mediumint(8) NOT NULL,
    43.   `user_blacklist` text NOT NULL,
    44.   `user_sp` varchar(10) NOT NULL,
    45.   `user_support` smallint(6) NOT NULL,
    46.   `user_balance` float NOT NULL,
    47.   `user_lastupdate` varchar(10) NOT NULL,
    48.   `user_gifts` mediumint(8) NOT NULL,
    49.   `user_public_num` mediumint(8) NOT NULL,
    50.   `user_audio` int(11) NOT NULL,
    51.   `user_msg_type` tinyint(2) NOT NULL,
    52.   `user_delet` tinyint(3) NOT NULL,
    53.   `user_ban` tinyint(3) NOT NULL,
    54.   `user_ban_date` varchar(10) NOT NULL,
    55.   `user_new_mark_photos` mediumint(8) NOT NULL,
    56.   `user_doc_num` mediumint(8) NOT NULL,
    57.   `user_logged_mobile` tinyint(1) NOT NULL,
    58.   `user_active` tinyint(2) NOT NULL,
    59.   `user_rphone` varchar(20) NOT NULL,
    60.   `new_reg` tinyint(2) NOT NULL,
    61.   `mydesign` tinyint(1) NOT NULL,
    62.   `user_rating` mediumint(8) NOT NULL,
    63.   `balance_rub` double NOT NULL,
    64.   `user_cover` varchar(25) NOT NULL,
    65.   `user_cover_pos` varchar(4) NOT NULL,
    66.   `logs_num` int(11) NOT NULL,
    67.   `banner_cat` int(11) NOT NULL,
    68.   `star` tinyint(2) NOT NULL,
    69.   `notify` varchar(255) NOT NULL,
    70.   `invties_pub_num` smallint(6) NOT NULL,
    71.   `short_link` varchar(255) DEFAULT NULL,
    72.   `georg_lent` tinyint(4) DEFAULT '0',
    73.   `user_vip` int(1) NOT NULL,
    74.   `user_obshenie_num` mediumint(8) NOT NULL,
    75.   PRIMARY KEY (`user_id`),
    76.   KEY `user_logged_hash` (`user_hid`),
    77.   KEY `user_password` (`user_password`),
    78.   KEY `user_email` (`user_email`),
    79.   KEY `user_country` (`user_country`),
    80.   KEY `user_city` (`user_city`),
    81.   KEY `user_photo` (`user_photo`),
    82.   KEY `user_sex` (`user_sex`),
    83.   KEY `user_day` (`user_day`),
    84.   KEY `user_month` (`user_month`),
    85.   KEY `user_year` (`user_year`),
    86.   KEY `user_delet` (`user_delet`),
    87.   KEY `user_ban` (`user_ban`),
    88.   KEY `user_reg_date` (`user_reg_date`),
    89.   KEY `user_last_visit` (`user_last_visit`),
    90.   KEY `user_sp` (`user_sp`),
    91.   KEY `user_search_pref` (`user_search_pref`)
    92. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=18 ;
     
  10. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
     
  11. raikage

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

    С нами с:
    11 мар 2012
    Сообщения:
    48
    Симпатии:
    0
    вот же отправил, но там не понял, не понимаю зачем там user_fave_num?
     
  12. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    понятно. ты не знаешь что такое цикл. приходи через полгода-год
     
  13. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    artoodetoo, да нет, он нашёл:
    Код (Text):
    1. $sql_ = $db->super_query("SELECT tb1.fave_id, tb2.user_search_pref, user_photo, user_last_visit, user_logged_mobile FROM `".PREFIX."_fave` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = '{$user_id}' AND tb1.fave_id = tb2.user_id ORDER by `date` ASC LIMIT {$limit_page}, {$gcount}", 1);
    2.             $tpl->load_template('fave.tpl');
    3.             $tpl->result['content'] .= '<table class="food_planner" id="fave_users">';
    4.             foreach($sql_ as $row){
    5.                if($row['user_photo'])
    6.                   $tpl->set('{ava}', $config['home_url'].'uploads/users/'.$row['fave_id'].'/100_'.$row['user_photo']);
    7.                else
    8.                   $tpl->set('{ava}', '{theme}/images/100_no_ava.png');
    9.                
    10.                $tpl->set('{name}', $row['user_search_pref']);
    11.                $tpl->set('{user-id}', $row['fave_id']);
    12.  
    13.                OnlineTpl($row['user_last_visit'], $row['user_logged_mobile']);
    14.                
    15.                $tpl->compile('content');
    16.             }
    raikage, Смотрите, в примере, который вы нашли, цикл есть, а у вас в коде - нету :) Попробуйте сами понять разницу :)