Strict Standards: Resource ID#27 used as offset, casting to integer (27) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#29 used as offset, casting to integer (29) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#30 used as offset, casting to integer (30) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Привязка скрипта комментариев по id к новостям
ТвойWeb » WebMaster класс » PHP/Perl » Привязка скрипта комментариев по id к новостям

Страниц (1): [1]
 

1. budeanov - 30 Января, 2007 - 08:00:51 - перейти к сообщению
Здравствуйте Уважаемые
Помогите, пожалуйста - мозги уже кипят.
Есть скрипт новостей
Есть скрипт комментариев к странице (к новости)
А вот чего нету, так это привязки оставленных коментариев к этим самым новостям.

скрипт новостей (которые хранятся в БД MySQL), вызывает новость так:
_________________________________
CODE:

<?
if (isset($_GET['id']))
{
$result=mysql_query ("SELECT name, title_".$lang." FROM pages WHERE id = (SELECT subid FROM news WHERE id='".$_GET['id']."')") or die (mysql_error());
$curpage=mysql_fetch_array ($result);
} elseif (($_POST['page']<>"news")&&($_GET['page']<>"main"))
{
$curpage['name']=$_POST['page'];
$curpage['title_'.$lang]=$_POST['title'];
}
?>

__________________________________

и сама страница с новостью видется так : http://www.мой.сайт/?page=news&id=2507
(не ЧПУ, но и не важно )

пробовал делать - привязывается ко всем сразу, то-есть при переходе на другую новость - остаются те же самые комментарии, что и в предыдущих.

скрипт коментариев достаточно простенький, да ИМХО и не так важно (если хотите могу выложить)

{Может и ошибаюсь, но думаю, скрипт /index.php, которому посылается комментарий, должен по переменной referer определять с какой страници он пришел и записывать комментарий в базу данных, в ту же запись, что и сама статья
1. либо как продолжение текста
2. либо в дополнительном поле базы}

Пытался по разному, к примеру:

CODE:

echo "<form action='addcoment.php' method='POST'>
<input type='text' name='Text'>
<input type='hidden' name='id' value='".$_GET["id"]."'>
<input type='submit'>";


- не помогло
Как ПРАВИЛЬНО это сделать, я не знаю
Прошу хелпа
2. TvoyWeb - 30 Января, 2007 - 10:37:33 - перейти к сообщению
budeanov
Жаль сейчас поиск не работает на форуме. Где-то уже была точно такая же тема.
Суть в следующем. Ты хранишь данные о новостях в таблице MySQL news (к примеру). И там есть уникальное поле id (хотя оно может называться и по другому, не суть). Это номер новостей в базе новостей. По этому номеру ты вытаскиваешь новость.
Далее для комментариев у тебя другая таблица и там тоже есть уникальное поле с номером комментариев (неважно от какой новости комментарий). Повторюсь с уникальным номером. Кроме всего прочего в таблице комментариев есть и должно быть поле с номером материала родителя к которому относится комментарий. В твоем случае материал родитель это та или иная новость. Так вот в таблице комментариев для каждого комента есть поле в которое записывается ID новости к которому относится комментарий. И чтобы выводить комментарий ты должен скрипту вывода комментариев передать именно этот ID и по нему вытаскивать все комменты которые имеют такой ID.
3. budeanov - 30 Января, 2007 - 10:53:15 - перейти к сообщению
TvoyWeb
Ммм...
ты имеешь в виду создать таблицу в БД названием, допустим, comments с полями id, text, news_id и при добавлении коммента писать его в эту таблицу? форма посылает text, id (новости), тогда INSERT INTO comments (text, news_id) VALUES ($text, $id) ?

Потом под новостями делать выборку
SELECT * FROM comments WHERE news_id = '$_GET[id]' ?
Так?

Хитро
Не подумал
Сенкс тебе за мысль
4. TvoyWeb - 30 Января, 2007 - 11:07:14 - перейти к сообщению
budeanov пишет:
Так?

Все верно!
budeanov пишет:
Хитро

Не хитро! Так и делается.

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0269]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33