X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Вывод последних комментов для одного блога
FordogeN
FordogeN
Topic Starter сообщение 9.2.2009, 20:45; Ответить: FordogeN
Сообщение #1


САБЖ :)
Задача такова: Нужно вывести последние $n комментариев в одном блоге.



c_id (id коммента), e_id (id записи к которой этот коммент), w_id (id блога в котором коммент), ну а дальше и так понятно

Вот кусок таблицы:
[img]http://www.ii4.ru/images/418983phpmyadmin.JPG[/img]


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 9.2.2009, 21:35; Ответить: FordogeN
Сообщение #2


Вот кстате пример кода для вывода последних комментов. Не для определенного блога, а вапще.
function list_recent_comments() {
echo "<table cellpadding='3' cellspacing='0' width='400'>";
$entries = mysql_query("SELECT e_id, w_id, author_u_id, title, contents FROM comments ORDER BY c_id DESC LIMIT 10");
while($entry = mysql_fetch_assoc($entries)) {
$author = mysql_fetch_assoc(mysql_query("SELECT username, avatar FROM users WHERE u_id='$entry[author_u_id]' LIMIT 1"));
$weblog = mysql_fetch_assoc(mysql_query("SELECT weblog FROM weblogs WHERE w_id='$entry[w_id]'"));
if($author[avatar] == "") { $author[avatar] = "./images/noavatar.gif"; }
if($entry[title] == "") { $entry[title] = "Untitled"; }
$entry[contents] = strip_tags($entry[contents]);
if(strlen($entry[contents]) >= 120) { $entry[contents] = substr($entry[contents], 0, 120); $entry[contents] .= "... (<a href='$weblog[weblog]/$entry[e_id]'>Читать полностью</a>)";
}

echo "
<tr>
<td>
<a href='http://livekeep.ru/$weblog[weblog]/$entry[e_id]'>$entry[title]</a>
</td></tr>

";
}
echo "</table>";
}


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 9.2.2009, 22:36; Ответить: ZiTosS
Сообщение #3


Немного не понятно что нужно... Ты можешь написать подробнее?
Я так понял у тебя есть к примеру 10 блогов, в каждом блоге темы, в каждой теме комментарии к ним. И тебе нужно вывести из таблицы комментарии одного блога? Или же тебе нужно вывести комментарии одной темы данного блога?
А вообще бы уже пора самому научиться писать SQL запросы. Я их уже 100 раз подобные показывал ;)
И функция твоя не очень красивая :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 9.2.2009, 23:26; Ответить: FordogeN
Сообщение #4


Да. Именно так.
эмм.. там нужно только добавить оператор или как это назыв. Кароч чтоб выводило только если встречается что то заданное. в нашем случае в поле w_id нужно id нашего блога чтоб было...
ну... ты понял думаю))


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 9.2.2009, 23:44; Ответить: ZiTosS
Сообщение #5


<?php
/* подключаемся к БД */

function lastCommentsByBlog($idBlog, $limit)
{
   $parse = "";
   $res = mysql_query("SELECT * FROM comments WHERE w_id={$idBlog} ORDER BY c_id DESC LIMIT {$limit}");
   if(mysql_num_rows($res)==0)
      return "В выбранном вами блоге нет комментариев";
   while($array = mysql_fetch_array($res))
      $parse .= parseComment($array);
   return $parse;
}

function parseComment($comment)
{
   $text = "<b>{$comment['title']}<b><br>
                   {$comment['contents']}
                <br><br>";
   return $text;
}


/* lastCommentsByBlog(id_Блога, Сколько_комментариев_вывести) */
/* Выводим последние 15 комментариев в блоге с id=5*/

echo lastCommentsByBlog(5, 15)
?>


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 10.2.2009, 0:09; Ответить: FordogeN
Сообщение #6


Отлично работает... Нажал "Спасибо!"))))))))))))))


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 10.2.2009, 0:14; Ответить: ZiTosS
Сообщение #7


А теперь учись сам писать :) Я уже много кода написал, вот если не будет получаться, выкладывай код, будем разбираться. Писать скрипты за других это не обучение.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 10.2.2009, 0:22; Ответить: FordogeN
Сообщение #8


Ну я выкладую как раз ток если у самого не выходит... Не даром же книгу купил))

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) ⭕Антидетект браузер AdsPower для эффективной работы с мультиаккаунтами!
84 AdsPower 24534 Сегодня, 16:35
автор: AdsPower
Горячая тема (нет новых ответов) Betatransfer.net - прием платежей для HIGH RISK проектов, интернет эквайринг и мерчант онлайн оплат
55 arendator 35101 Сегодня, 2:12
автор: arendator
Открытая тема (нет новых ответов) Rebex.io – Ваша инновационная платформа для обмена криптовалюты!
3 Rebex 972 Вчера, 20:50
автор: Rebex
Открытая тема (нет новых ответов) Посоветуйте массажер для спины и шеи
10 Boymaster 913 Вчера, 18:02
автор: Boymaster
Открытая тема (нет новых ответов) Обучение Email Рассылкам + Софт Для Автоматизации (100к в сутки с сервера)
10 zennoboss 4664 Вчера, 5:20
автор: Skyworker


 



RSS Текстовая версия Сейчас: 25.4.2024, 18:19
Дизайн