Как сделать... облако тегов php + mysql...

Статус
В этой теме нельзя размещать новые ответы.

antiadmin

Местный житель
Регистрация
24 Май 2008
Сообщения
395
Реакции
24
Имеем код
PHP:
<?php
	include('conf.php');
	mysql_connect(DBHOST, DBUSER, DBPASS);
echo mysql_error();
	mysql_select_db(DBNAME);
echo mysql_error();

	mysql_query('drop table if exists `' . DBPREFIX . 'news`');
	mysql_query('CREATE TABLE `' . DBPREFIX . 'news` (
		`news_id` int(11) not null auto_increment,
		`news_title` varchar(100) not null,
		`news_anons` text,
		`news_text` text,
		`news_added` int(11) not null default \'0\',
		PRIMARY KEY (`news_id`)
	) type=MyISAM');
echo mysql_error();

	mysql_query('drop table if exists `' . DBPREFIX . 'tags`');
	mysql_query('CREATE TABLE `' . DBPREFIX . 'tags (
  `id` INT(11) NOT NULL auto_increment,
  `news_id` INT(11) NOT NULL default \'0\',
  `tag` varchar(100) NOT NULL default \'\',
  PRIMARY KEY  (`id`),
  KEY `news_id` (`news_id`),
  KEY `tag` (`tag`)
) TYPE=MyISAM');
echo mysql_error();

?>

Таблицу tags выдрал то ли из WordPress, то ли из DLE, вопрос, что дальше? :D
Не могу понять, допустим к тегу под id 12 относится около 3000 новостей, как записать их айди в поле news_id колонки tags?
 
Делается три таблицы:

1) Новость - id_новости
2) тэг - id_тэга [ - число постов с тегом , не обязательно, но ОЧЕНЬ упростит работу ]
3) id_новости - id_тэга

если новость относится к нескольким тэгам в таблицу 3 пишется
id_новости1 - id_тэга1
id_новости1 - id_тэга2
id_новости1 - id_тэга3
ну и т.д.

вообще если ты взял таблицу изз WP -- посмотри сорцы виджета облака тегов ( DLE -- тоже самое )

PS смотри
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху