Jump to content
php.lv forumi

Izvadam tēmu ar pēdējo komentāru


m8t

Recommended Posts

Tātad, ideja vienkārša, vajag izveidot skriptu, kurš izvadītu tās tēmas id, kurā ir pēdējais posts.

 

Pašreizējais skripts:

$query = "SELECT DISTINCT topic_id FROM {$tblprefix}komentari ORDER BY datums DESC LIMIT 6";
$run = mysql_query($query);
while($row = mysql_fetch_array($run)) {
echo $row['topic_id'];
}

 

Šis skripts pa pusei strādā. Būs grūti paskaidrot, bet mēģināšu.

 

Tātad, man ir tēmas ar id:

1

2

3

 

Komentāri ir lūk šādi:

1. tēmā komentārs ar id 1

2. tēmā komentārs ar id 2

1. tēmā komentārs ar id 3

3. tēmā komentārs ar id 4

 

Tātad vēlētos lai mans skripts viņus saorganizētu šādi:

3. tēma

1. tēma

2. tēma

 

Bet tā vietā viņš man izvada šādi:

3. tēma

2. tēma

1. tēma

 

Atvainojos, ja ļoti neskaidri paskaidroju, centos cik spēju lai mani varētu saprast!

Link to comment
Share on other sites

Kā pa pusei strādā? Vai nu strādā, vai nestrādā :)

Neredzu kodā no visa izejošā neko nepareizu, varbūt, komentāru secība tomēr ir savādāka nekā Tu nosauci, tāpēc izvadē ir 3, 2, 1, nevis 3, 1, 2?

Varētu parādīt tabulas struktūru drošības pēc, šķiet, ka vizualizēju prātā to visu pareizi, bet ja nu kas.

Link to comment
Share on other sites

Komentāri:

CREATE TABLE IF NOT EXISTS `jv_komentari` (
 `id` int(11) NOT NULL auto_increment,
 `topic_id` int(11) NOT NULL,
 `author` int(11) NOT NULL,
 `comment` varchar(1000) character set utf8 collate utf8_bin NOT NULL,
 `datums` timestamp NOT NULL default CURRENT_TIMESTAMP,
 PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=71 ;

 

Pašas tēmas:

CREATE TABLE IF NOT EXISTS `jv_forums` (
 `id` int(11) NOT NULL auto_increment,
 `topic` varchar(30) character set utf8 collate utf8_bin NOT NULL,
 `date` timestamp NOT NULL default CURRENT_TIMESTAMP,
 `text` varchar(1000) character set utf8 collate utf8_bin NOT NULL,
 `made_by` int(11) NOT NULL,
 `news` int(11) NOT NULL default '0',
 `avatar` varchar(10000) NOT NULL,
 PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ;

 

Mazliet savādāk mēģināšu paskīdrot:

Tātad, es izveidoju 2 tēmas. 1. nav neviens komentārs. 2. es iepostoju 2 komentārus. Pēc laiciņa 1. es iepostoju 1 komentāru un 2. iepostoju vēl 1 komentāru. Tātad pašlaik ir 1. tēmā - 1 komentārs, 2. tēmā - 3 komentāri. Pēdējais komentārs ir ielikt 2. tēmā. Tātad, pēc idejas vajadzētu sakārtoties šādi:

2. tēma

1. tēma

Bet diemžēl man sakārtojas šādi:

1. tēma

2. tēma

Tātad, tiek ņemts vērā tikai pats pirmais komentārs un pirmā komentāra laiks. Netiek ņemts vērā pēdējā komentāra laiks.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...