|
|
|
| как в вашем форуме хотелось бы узнать как в базе хранятся сообщения и общие и на определенное сообщение по розь или в месте както? просто сам захотел сделать также чтоб смещялось в право при ответе на сообщение.. что не изобретать велосипед решил посоветоватся у вас! заранее спасибо! | |
|
|
|
|
|
|
|
для: sidPR
(17.01.2007 в 22:54)
| | Все сообщения хранятся в одной таблицы
id_post, ..., id_parent, id_theme
|
id_post - первичный ключ сообщения
id_parent - ключ родительского сообщения (для самого первого в теме - 0)
id_theme - первичный ключ темы
При открытии темы выбирается первое сообщение, т.е. то, которое имеется id_parent=0, допустим имеет это сообщение id_post = 45. Выбираем все сообщения с id_parent = 45 и выводим их с отступом. Для каждого из сообщений повторяем процедуру. В результате осуществляется рекурсивный спуск до тех пор, пока не в теме не исчерпаются сообщения. | |
|
|
|
|
|
|
|
для: cheops
(18.01.2007 в 00:36)
| | Спасибо уяснил | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 01:06)
| | А до меня вот не дошло)) | |
|
|
|
|
|
|
|
для: LuxeMate
(18.01.2007 в 01:20)
| | чето не могу сореентироватся сделал так
поля:
id - номер коментария
id_news - номер новости к которой идут коментарии
id_otv - сдесь номер id сообщения на который дают ответ
date - дата
name - имя
msg - сообщение
по дефолту id_otv = 0 (если не отвечали а просто добавили комент)
делаю так
if($com['id_otv']!=0){
$w=$w-5;
}elseif ($com['id_otv']==0)
{
$w='100';
}
|
ну думаецца не совсем правильно $w - ширина в процентах таблици сообщения | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 01:37)
| | А вы не вычитайте, а прибавляйте проценты левого столбца, который делает отступ от 0 до 50, после того, как достигните 50% - уменьшайте процент прибавления с таким расчётом, чтобы 100% никогда не достичь. | |
|
|
|
|
|
|
|
для: cheops
(18.01.2007 в 01:40)
| |
while($com = mysql_fetch_array($result))
{
if($com['id_otv']!=0){
$w=$w-5;
}elseif ($com['id_otv']==0)
{
$w='100';
}
echo "<table id='$com[id]' border=0 cellpadding=0 cellspacing=0 width=$w% height=50>
<tr>
<td width='50%' height=10>Имя:<b>$com[name]</b></td>
<td width='50%' height=10>
<p align='right' class='date'>$com[date]</td>
</tr>
<tr>
<td valign='top' style='border-top:#D74D22 solid 1px;PADDING-BOTTOM: 5px;PADDING-TOP: 5px; PADDING-RIGHT: 5px;PADDING-LEFT: 10px;' width='100%' bgcolor='#A90303' colspan='2'>$com[msg]</td>
</tr>
</table>
<table border='0' cellpadding='0' cellspacing='0' height='34' id='menu'>
<tr>
<td valign='top'>
<a href='#' onclick=\"alert('Ответы временно заблокированны')\" class='otvet' onmouseover=\"this.style.background='#790003'\" onmouseout=\"this.style.background='#A90303'\">Ответить</a>
</td>
</tr>
</table>
";
}
|
я немного не понял к чему тут прибовлять ? | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 01:43)
| | Впринцепе со смещением все пашет ток с условиями я не могу разобратся так чтобы если Id=3 и все ответы а тоесть 'id_otv' тоже равно 3 к примеру их 5 сообщений чтоб они шли ровненько под id=3 а получается лесенкой ... =\ чето упустил | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 01:56)
| | еще нюанс ведь если отвечают на определенный комент этот ответ располагается непосредственно под тем на который отвечали правильно же? | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 13:37)
| | надо както сделать чтоб если в поле 'id_otv' не ноль а Id комента то вставлять это со сдвигом под это сообщение а тоесть Id которого указан в поле 'id_otv' .... как сделать это ума не приложу ... а несколько запросов не хочется делать :( ? подскажите пожалуйста как это можно организовать | |
|
|
|
|
|
|
|
для: sidPR
(18.01.2007 в 13:37)
| | только если это первый ответ на коммент. Второй удет расположен под деревом первого ответа, третий - под деревом второго и т.д. | |
|
|
|
|
|
|
|
для: Trianon
(19.01.2007 в 12:50)
| | помогите с организацией вывода ... | |
|
|
|
|
|
|
|
для: sidPR
(19.01.2007 в 16:34)
| | Чем Вас не устраивает то,как реализован вывод в этом форуме? Реализация лежит в разделе downloads. | |
|
|
|
|
|
|
|
для: Trianon
(19.01.2007 в 17:30)
| | Я просто хочу чтоб при ответе на какое либо сообщение ... оно распологалось не посредственно под ним... | |
|
|
|