25 января 2014
9528
количество записей в базе данных, php, mysql

Количество записей в базе данных

PHP
Демонстрация » Скачать »

Сегодня мы рассмотрим с Вами один момент, связанный с активной ссылкой при количестве записей в базе данных. Например, у нас есть таблица в которой хранятся записи. В зависимости от того, есть ли данные в таблице, мы формируем ссылку с количеством записей в базе данных. Допустим, в таблице news у нас имеются две записи, то соответственно мы отображаем их количество, при этом ссылка становится активной, если же ноль записей в таблице, то у нас просто отображается ноль.

 

ШАГ ПЕРВЫЙ. База данных MySQL.

 

Создаем базу данных active_link и в ней создаем две таблицы news и articles. В таблице news и articles будут по два поля: id - идентификатор и title - название.

В таблице news будут две записи, в таблице articles записей не будет, чтобы можно было увидеть результат работы скрипта.

 

Таблица news.

 

CREATE TABLE IF NOT EXISTS `news` (
  `id` int(2) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

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

INSERT INTO `news` (`id`, `title`) VALUES
(1, 'Машины'),
(2, 'Компьютеры');

 

 

Таблица articles.

 

CREATE TABLE IF NOT EXISTS `articles` (
  `id` int(1) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

 

 

ШАГ ВТОРОЙ. PHP. Файл index.php.

 

Для начала подключаемся к базе данных active_link. Привилегии: "root", "". 

 

/* Подключаемся к базе данных */
$db = mysql_connect("localhost", "root", "");
mysql_select_db("active_link", $db);
/* Устанавливаем кодировку */
mysql_set_charset("UTF8", $db);
mysql_query("SET NAMES 'UTF8'");
if(!$db) echo mysql_error();

 

 

Теперь делаем запросы на количество записей в таблицах news и articles.

/* Создаем запрос на количество записей в таблице news */
$news = mysql_query("SELECT COUNT(*) FROM news");
@$news_count = mysql_fetch_array($news);

/* Создаем запрос на количество записей в таблице articles */
$articles = mysql_query("SELECT COUNT(*) FROM articles");
@$articles_count = mysql_fetch_array($articles);

 

Выводим активные ссылки, если количество записей больше ноля, если нет, то выводим просто ноль.

 

/* Вывод ссылки новостей из таблицы news */
echo"<div><label>Новостей: </label>"; 
/* Если в таблице news записей больше ноля, то выводим активную ссылку */
if($news_count[0]>0)
{ 
echo"<a href='news.php'>$news_count[0]</a>";
} 
/* Если меньше ноля, то выводим просто ноль */
else 
{
echo"$news_count[0]";
}
echo"</div>";

/* Вывод ссылки новостей из таблицы articles */
echo"<div><label>Статей: </label>";
/* Если в таблице articles записей больше ноля, то выводим активную ссылку */ 
if($articles_count[0]>0)
{ 
echo"<a href='article.php'>$articles_count[0]</a>";
} 
/* Если меньше ноля, то выводим просто ноль */
else 
{
echo"$articles_count[0]";
}
echo"</div>";

 

 

ШАГ ТРЕТИЙ. PHP. Файл news.php.

 

Подключаемся к базе данных и выводим все записи с таблицы news.

 

/* Делаем запрос на выборку всех полей с таблицы news */
$news = mysql_query("SELECT * FROM news");
@$res = mysql_fetch_array($news);
do
{
echo "$res[id] | $res[title]<br>";
}
while(@$res = mysql_fetch_array($news));

 

 

ШАГ ЧЕТВЕРТЫЙ. CSS. файл style.css.

 

label
{
font-weight: bold;
}

 

Благодарю за внимание!