За последние 24 часа нас посетили 17732 программиста и 1701 робот. Сейчас ищут 1224 программиста ...

Вывести инфу из мускула на страницу

Тема в разделе "MySQL", создана пользователем viphost, 6 сен 2009.

  1. viphost

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

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    Здравствуйте! Я полный нуб в этом и прошу вашей помощи.
    Много читал, но так ничего и не понял.
    Есть в мускула таблица в которую вписываются адреса сайтов источников

    Пример структуры
    [sql]
    CREATE TABLE `news_sources` (
    `id` int(11) NOT NULL auto_increment,
    `id_region` int(11) NOT NULL default '1',
    `id_category` int(11) NOT NULL default '0',
    `name` varchar(255) NOT NULL default '',
    `url` varchar(255) NOT NULL default '',
    `fio` varchar(255) NOT NULL default '',
    `mail` varchar(255) NOT NULL default '',
    `is_parsed` int(1) NOT NULL,
    `is_moderated` int(1) NOT NULL default '0',
    `comment_region` text NOT NULL,
    `comment_category` text NOT NULL,
    `comment_message` text NOT NULL,
    PRIMARY KEY (`id`),
    KEY `id_region` (`id_region`),
    KEY `id_category` (`id_category`),
    KEY `name` (`name`),
    KEY `url` (`url`),
    KEY `is_moderated` (`is_moderated`)
    ) ENGINE=MyISAM AUTO_INCREMENT=544 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=544 ;

    --
    -- Дамп данных таблицы `news_sources`
    --

    INSERT INTO `news_sources` VALUES (534, 0, 29, 'site.ru', 'http://site.ru/index.php', '', '', 0, 1, '', '', '');
    [/sql]

    В этой таблице примерно 50 источников, как вывести количество источников из базы данных на страницу?

    Для меня это очень сложно, поэтому если можно разъяснить поподробнее как это реализовать буду очень признателен.
     
  2. dots_rei

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

    С нами с:
    7 авг 2009
    Сообщения:
    193
    Симпатии:
    0
    как-то так:
    PHP:
    1.  
    2. $query="SELECT `id` FROM `news-sources`";
    3. $result=mysql_query($query);
    4. if (!$result) {echo ('Ошибка.'); $count=0;}
    5. else {$count=mysql_num_rows($result);}
    6. echo ('Количество источников '.$count); // и выводим на экран
    7.  
     
  3. viphost

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

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    dots_rei
    Ого, спасибо вам большое, вы мне очень помогли :)
     
  4. Lesya

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

    С нами с:
    14 авг 2006
    Сообщения:
    54
    Симпатии:
    0
    Адрес:
    Запорожье
    Еще можно такой запрос сделать:
    PHP:
    1. $query="SELECT count(*) FROM 'news-sources'";
    2. $result=mysql_query($query);
    3. echo ('Количество источников '.mysql_result($result,0));
     
  5. viphost

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

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    Lesya
    Спасибо и вам.
    Вот еще вопрос назрел, а как можно вывести еще и названия сайтов?
    Ну т.е. чтобы был список сайтов находящихся в базе данных
    site.ru 1
    site.ru 2
    site.ru 3
    ...

    Пошел изучать PHP, может кто даст линк на онлайн учебник? Заранее спасибо вам )
     
  6. Lesya

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

    С нами с:
    14 авг 2006
    Сообщения:
    54
    Симпатии:
    0
    Адрес:
    Запорожье
  7. dots_rei

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

    С нами с:
    7 авг 2009
    Сообщения:
    193
    Симпатии:
    0
    необходимо выводить содержимое полей, в которых содержатся названия сайтов :) вероятно это у вас name и/или url.
    а вывести можно таким способом:
    PHP:
    1.  
    2. <?php
    3. $query="SELECT `url` FROM `news_sources`";
    4. $result=mysql_query($query);
    5. $text='';
    6. if (!$result or (mysql_num_rows($result)==0))
    7. {
    8.     $text='Источников нет.';
    9. }
    10. else
    11. {
    12.     $i=0;
    13.     while ($row=mysql_fetch_array($result))
    14.     {
    15.        $i=$i+1;
    16.        $site=$row['url'];
    17.        $text=$text.$site.' '.$i.'<br />';
    18.     }
    19. }
    20. echo ($text);
    21. ?>
     
  8. viphost

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

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    Что то перестало у меня работать все, работало 3 дня наверное, а потом начало писать ошибка источников 0, с чем это может быть связано?
     
  9. LuckyScrat

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

    С нами с:
    16 июн 2009
    Сообщения:
    176
    Симпатии:
    0
    Адрес:
    Москва
    с тем что либо их действительно нет mysql_num_rows($result)==0 либо ошибка в запросе
    выведите ошибку на экран:
    PHP:
    1. $result=mysql_query($query);
    2. echo mysql_error();
     
  10. armadillo

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

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    за такие советы бьют ногами.
     
  11. viphost

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

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    LuckyScrat
    Вывел так
    PHP:
    1.  
    2. $query="SELECT `id` FROM `news_sources`";
    3. $result=mysql_query($query);
    4. echo mysql_error();
    5.  
    пишет что таблицы не существует (
    Но почему? Таблица же есть


    А все понятно почему, я недавно установил скрипт статистики и на странице подключается он вот так
    PHP:
    1. <?php
    2.    include "stat/count.php";
    3. ?>
    А как можно в коде указать базу данных с которой нужно брать инфу?
     
  12. dots_rei

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

    С нами с:
    7 авг 2009
    Сообщения:
    193
    Симпатии:
    0
    вперед)
     
  13. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Девушку? Ногами? За то что она выбирает значения всех ID, а не их количество? Стыдно должно быть.
     
  14. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    mysql_select_db (database)
    если в запрос то через точку (database.table)