Оно нужно для поисковых роботов. Ключ "R" это обозначение редиректа, а 301 это его тип. Поисковики перестраивают страницы в индексе, если видят этот ключ. Это обязательный ключ в данном примере, без него не будет толку (фактически, не теоретически).
Progr@mmer\. добавил 03.03.2008 в 01:18
Luxer, если я вас правильно понял, то вам нужно в .htaccess'e на podforum.site.ru написать это:
DirectoryIndex index.php
Создай .htaccess в корне с таким содержимым:
Options +FollowSymLinks RewriteEngine on RewriteRule ^forum(/?)+$ http://site.ru/index.php [R=301,L] RewriteRule ^forum/(.*)$ http://site.ru/$1 [R=301,L] RewriteRule ^forum/(.*)/(.*)$ http://site.ru/$1/$2 [R=301,L]
site.ru замени своим сайтом.
У меня преотличнейше работает :)
Jefa, рекурсивный ноиндекс. Чему ж тут удивляться? :D
С орфографией поработайте, а потом уже и предлагайте.
Оу!,
1. Каков бюджет? Не надо предложений типа "Ну, ты скажи какой бюджет".
2. Что брать за 1, 2, 3 и т.д. страницу? От чего отталкиваться? И где хранить эти страницы для каждого пользователя? В куках?
Постучал в аську, жду ответа
У твоего примера нет @ у БД-функций, что чревато лишними ошибками :)
гыы.. Слушайте таких людей больше, которые предлагают такое %)))
1. Нет смысла закрывать всю новость от индексации
2. Кто ж так теги расставляет? :D юмористы
Нее, лучше то не использовать. Просто сделайте вот так (оно надёжнее + лучше)
<? $base="*****"; $user="*****"; $pass="*****"; $host="*****"; $error = false; if (!$link = @mysql_connect($host, $user, $pass) { $error = true; } else { if (!@mysql_select_db($base, $link)) { $error = true; } else { $query = "SELECT `threadid`, `title` FROM `thread` LEFT JOIN `user` ON (`thread`.`lastposter`=`user`.`username`) ORDER BY `dateline` DESC LIMIT 5"; if (!$result = @mysql_query ($query, $link)) { $error = true; } } } if (!$error) { $template = ''; while ($row = mysql_fetch_array($result)) { $template .= "<div><a href='forum/showthread.php?threadid=".$row['threadid']."'>".$row['title']."</a></div>"; } } else { $template = "<center>Извините, просмотр последних тем пока что не доступен.</center>"; } echo $template; ?>
Progr@mmer\. добавил 01.03.2008 в 23:30
Или даже так:
<? $base="*****"; $user="*****"; $pass="*****"; $host="*****"; $error = false; $query = "SELECT `threadid`, `title` FROM `thread` LEFT JOIN `user` ON (`thread`.`lastposter`=`user`.`username`) ORDER BY `dateline` DESC LIMIT 5"; $link = @mysql_connect($host, $user, $pass); @mysql_select_db($base, $link); if (!$result = @mysql_query($query, $link)) { $error = true; } if (!$error) { $template = ''; while ($row = mysql_fetch_array($result)) { $template .= "<div><a href='forum/showthread.php?threadid=".$row['threadid']."'>".$row['title']."</a></div>"; } } else { $template = "<center>Извините, просмотр последних тем пока что не доступен.</center>"; } echo $template; ?>
Не тестил, лучше сам проверь :)
А вообще есть ли соединение с БД? В этой ошибке говорится о том, что указанный аргумент не является правильным (например, $this->connection_id является пустой строкой, а не ссылкой на соединение с БД).
Возможно, перед тем, как идет запрос нет соединения с БД, поэтому то и получается эта ошибка.
Progr@mmer\. добавил 01.03.2008 в 18:00
Не заметил, что написано, что регистрация проходит.
Попробуйте убрать из данной строки аргумент $this->connection_id. Но это не выход, сразу говорю.