Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#76 2008-01-23 22:00:43

VoiD
Гость

Re: mod_rewrite

сделал)
причем проходят и буквы и цифры и среднее тире)
только прикольно, когда создаешь топик 1-2-3-4-5-6-7-8-9 выводит 4_8
а если 9-8-7-6-5-4-3-2-1 то выводит 6_2 smile))
ну по сути это не проблема
теперь думаю, как поправить paginate, чтобы ссылки на первую страницу одинаковые были

и

хочу чтобы на первую страницу убиралось &p=1 это

Добавлено спустя     2 минуты  :
mod_rewrite&p=1

Добавлено спустя     3 минуты   6 секунд:
глюк в моде у вас) страницы не обрабатывает)
а еще, когда редактируется пост свой, то плагин этот вообще не срабатывает

Добавлено спустя     9 минут   57 секунд:
artoodetoo, а у тя поправлено в PE)

Редактировался VoiD (2008-01-23 22:02:29)

#77 2008-01-23 23:13:26

artoodetoo
Гость

Re: mod_rewrite

в PE вообще все ништяк wink а для чего ништяк не достигнут, того там нет wink

#78 2008-01-24 05:06:32

hcs
Гость

Re: mod_rewrite

Дайте код из PE, пожалуйста

#79 2008-01-24 06:35:44

artoodetoo
Гость

Re: mod_rewrite

файл include/functions.php, функция paginate()

было

        if ($cur_page > 3)
        {
            $pages[] = '<a href="'.$link_to.'&amp;p=1">1</a>';

стало

        if ($cur_page > 3)
        {
            $pages[] = '<a href="'.$link_to.'">1</a>';

далее было

            else if ($current != $cur_page || $link_to_all)
                $pages[] = '<a href="'.$link_to.'&amp;p='.$current.'">'.$current.'</a>';

стало

            else if ($current != $cur_page || $link_to_all)
                $pages[] = '<a href="'.$link_to.(($current==1)?'':('&amp;p='.$current)).'">'.$current.'</a>';

#80 2008-03-27 03:21:05

alko
Гость

Re: mod_rewrite

Задание: привести урлы форума к виду http://localhost/punbb/forum-1.html ... forum-5.html  и т.д., урлы топиков к виду http://localhost/punbb/sujet-1.html ... sujet-38.html и т.д.
Дополнительно: убрать ненашенское имя sujet на более приличное например topic

Открыть файл viewforum.php
Найти

$subject = $lang_forum['Moved'].': <a href="viewtopic.php?id='.$cur_topic['moved_to'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
else if ($cur_topic['closed'] == '0')
$subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
else
{
$subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';

Заменить на

$subject = $lang_forum['Moved'].': <a href="sujet-'.$cur_topic['id'].pun_url($cur_topic['subject']).'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
else if ($cur_topic['closed'] == '0')
$subject = '<a href="sujet-'.$cur_topic['id'].pun_url($cur_topic['subject']).'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';

Открыть файл include/function.php
Добавть в конец следующий код 

function pun_url($str,$more=false) {
        if((!isset($more)) || ($more == false)){
            $max = 2;
         }else{
            $max = $more;
         }
         $str = strtr($str,"?????????????????????????????????????????????????????'`",
                           "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeIIIIiiiiUUUUuuuuyNnCc  ");
         $str = strtolower($str);
         $str = preg_replace('/[^a-z0-9_\.\s]/',' ',$str);
         $str = preg_replace('/[^a-z0-9_\s]\./','',trim($str));
         $str = str_replace('.',' ',$str);
         $str = str_replace('_',' ',$str);
         $str = " ".$str." ";

         $str = ereg_replace(' .{1,'.$max.'} ', ' ', $str);
         $str = ereg_replace(' .{1,'.$max.'} ', ' ', $str);
         $rep = array(" quel ", " crois ", " etes ", " quand ", " suis ", " aux "," moi ", " sont ", " quelle ", " quoi ", " mon ", " est ", " plus ", " que ", " vous ", " faites ", " par "," dans "," pour "," pas "," les "," des "," que "," une "," avec "," qui "," sur "," mes ");
         $str = str_replace($rep," ",$str);
         $str = trim($str);
         $str = preg_replace('/[\s]+/','-',$str);

         if(count(explode("-", $str)) >= 8){
            $max++;
            $str = pun_url(str_replace('-',' ',$str),$max);
         }
         if(!$more){
         if((!isset($str)) || ($str == "")){
            $str = ".html";
           }
         }
           return $str;
  }

Мы получили, что топики с русскими названиями в виде урла идут сейчас как sujet-5.html, а вот если название английское (например, dsdsd), то получается http://localhost/punbb/sujet-16dsdsd.

Вопрос: где и что еще надо заменить, дабы решить задачу на 100% ?

#81 2008-03-31 01:58:05

alko
Гость

Re: mod_rewrite

Никто ничем помочь не может?
Тогда скажите как включить friendly urls в сборке этого сайта?

#82 2008-03-31 04:09:15

maximum
Гость

Re: mod_rewrite

Тему надо было внимательно изучать.

"sujet" - это французский big_smile Тот код, что представлен в первом сообщении темы на самом деле не сложный, а громоздкий. Причём, затрагиваются только основные моменты, а всё остальное - обычно эстетика. По этому и нет готового кода.

#83 2008-03-31 09:29:48

alko
Гость

Re: mod_rewrite

maximum пишет:

Тему надо было внимательно изучать.

"sujet" - это французский big_smile Тот код, что представлен в первом сообщении темы на самом деле не сложный, а громоздкий. Причём, затрагиваются только основные моменты, а всё остальное - обычно эстетика. По этому и нет готового кода.

Читал, можете не сомневаться! smile Проблема в том, что мне транслитерация не нужна, меня вполне устроит так, как сделано у вас на http://wpforum.ru/, то бишь topicXXX.html. Вот собственно вопрос - что поменять в стандартном модуле Пууугла, что вы привели в начале топика?

Если же хочется названий форумов, топиков, а так же профилей пользователей в URL, то вот код для транслитерации кирилловских символов в латинские (заменить дефолтный в functions.php):

Это не нужно.

Специально для вас показываю (на модификацию ушло 2 минуты), что это действительно работает

Замечательно! Вот и я так хочу сделать и по мере отсутствия  знаний по ПХП пытаюсь сделать (см. мой первый пост), а не просто сижу и прошу преподнести на блюдечке.

"sujet" - это французский

Ну дык в курсях, дело минуты рекурсивно поменять "суёт" например на tema во всех файлах и htaccess, про это я не спрашиваю.

#84 2008-03-31 10:22:24

VoiD
Гость

Re: mod_rewrite

убираешь везде в ссылках все, что касается pun_url. транслитерации не будет.

#85 2008-03-31 17:08:00

maximum
Гость

Re: mod_rewrite

alko пишет:

Замечательно! Вот и я так хочу сделать и по мере отсутствия  знаний по ПХП пытаюсь сделать (см. мой первый пост), а не просто сижу и прошу преподнести на блюдечке.

Я тоже не знаю PHP, только причём тут это? Важно - ориентироваться в коде движка. В моде на php только функция транслитерации, остальное же - банальная замена.
Пройтись по всем файлам и заменить viewtopic.php?id= на topic viewforum.php?id= на форум, ну а потом отразить это в htaccess.

#86 2008-04-01 01:29:47

alko
Гость

Re: mod_rewrite

VoiD пишет:

убираешь везде в ссылках все, что касается pun_url. транслитерации не будет.

То есть берем отдельный эпизод файла, например

$forum_field = '<h3><a href="forum-'.$cur_forum['fid'].'-'.pun_url($cur_forum['forum_name']).'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

и убираем pun_url вот так

$forum_field = '<h3><a href="forum-'.$cur_forum['fid'].'-'.($cur_forum['forum_name']).'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

правильно я вас понял?

сделал такую замену везде по каталогам, результат - форум не загружается

maximum пишет:

Я тоже не знаю PHP, только причём тут это? Важно - ориентироваться в коде движка. В моде на php только функция транслитерации, остальное же - банальная замена.
Пройтись по всем файлам и заменить viewtopic.php?id= на topic viewforum.php?id= на форум, ну а потом отразить это в htaccess.

Так, или я не еду или сани тупые? ))) Вроде я же не спрашиваю, как произвести замену средствами htaccess, просто задал вопрос - что поменять в стандартном модуле Пууугла, что вы привели в начале топика? Сори за наглость, но это вроде форум поддержки пунбб или нет?

#87 2008-04-01 03:45:11

maximum
Гость

Re: mod_rewrite

alko пишет:

Сори за наглость, но это вроде форум поддержки пунбб или нет?

Нет! Но только ради развития форума, смотрите первое сообщение топика.

PostScriptum: Осталось только confirm_referrer правильную прикрутить и в релиз. wink Ах да, прямая ссылка на данный сайт, при использовании данного мода, обязательна! tongue

#88 2008-04-01 05:26:08

alko
Гость

Re: mod_rewrite

Жаль, получается что поддержки этого форума на русском толковой нет...
Что ж буду юзать стандартный форум, раз это такая великая тайна. Удачи с релизом! )))

#89 2008-04-01 05:29:40

spycam
Гость

Re: mod_rewrite

алко, ну самое элементарное-поищи в блокноте это слово во всех изменяемых тобой файлах и замени потом...

#90 2008-04-01 07:04:16

alko
Гость

Re: mod_rewrite

spycam пишет:

алко, ну самое элементарное-поищи в блокноте это слово во всех изменяемых тобой файлах и замени потом...

Какое слово?
pun_url? после его удаление форум не работает вообще
sujet? это я сделал за 1 минуту и до того, как написал первое сообщение на этом форуме
просто я задаю конкретный вопрос maximum что поменять в стандартном модуле Пууугла, что вы привели в начале топика чтобы урлы были в виде как у него на сайте
простой вопрос подразумевает простой ответ, в ответ же отсылки читать внимательно первый пост, третий пост, идти по ссылкам и тд.. я не первый день замужем, все читал, смотрел, пробовал, и не имею привычки лезть на форум за помощью не сделав все что в моих силах
это прекрасно видно по моему первому посту - чел пытался разобраться, но - затык, и пришел с вопросом
похоже главное правило инет-сообщества  (перед тем как задать вопрос - поюзай поиск и поищи ответ, ну а если ответа нет - задай вопрос и тебе подскажут) на этом форуме не принимается в виду
без обид, и я на вас не обижаюсь, но факт!

#91 2008-04-01 07:47:43

VoiD
Гость

Re: mod_rewrite

что я имел в виду:
было:

$forum_field = '<h3><a href="forum-'.$cur_forum['fid'].'-'.pun_url($cur_forum['forum_name']).'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

стало:

$forum_field = '<h3><a href="forum-'.$cur_forum['fid'].'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

конечно рботать не будет - функцию удалил, а скобки остались)
по сути дела обьясню

$forum_field = '<h3><a href="forum-'.$cur_forum['fid'].'-'.pun_url($cur_forum['forum_name']).'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

здесь:

"forum-'

- пишет в строке адреса forum-

$cur_forum['fid']

- пишет номер форума (1,2,3) ну и т д

pun_url($cur_forum['forum_name'])

- выводит переведенное в транслит название форума (с топиками то же самое)
если сделать так:

$cur_forum['forum_name']

- то будет выводить бкз транслита, а тебе это не нужно вообще, да? те нужно forum-1.html
ну вот так и будет
можешь слить мою сборку посмотреть, будет проще)

Редактировался VoiD (2008-04-01 07:48:18)

#92 2008-04-01 18:54:54

maximum
Гость

Re: mod_rewrite

spycam, VoiD, не утруждайте себя, человек не хочет понять элементарное, к тому же это уже всё было на первой странице. Вчера вообще обновил первое сообщение, так му всё мало. smile

Конечно, конструктива в теме мало, особенно вначале, но, заметьте, тема имеет собирательное название, а значит и готовых предложений никто не общал. Да и на время создания темы посмотрите, тогда я только начал познавать punbb. wink

#93 2008-04-01 18:58:49

VoiD
Гость

Re: mod_rewrite

ну в 1.3 по умолчанию будет же реврайт, хотя как он с русским работать будет интересно

#94 2008-04-07 08:21:19

alko
Гость

Re: mod_rewrite

VoiD
Спасибо большое за помощь, вроде все понятно! Сейчас буду пробовать вашу сборку, только прийдется перевести в utf-8, как понял, там в сp1251 все?

maximum
И вам спасибо большое! Жаль конечно, что вы скромно забыли упомянуть в #87 что обновили первое сообщение темы, это общепринятая практика на форумах, люди совершенно не обязаны каждый день перечитывать первое сообщение темы и если оно изменено, об этом пишет автор в ходе обсуждения. Но тем не менее, хотел бы поправить сделанных вами пару ошибок: лишние кавычки в index.php и viewtopic.php попортили общее впечатление. Необходимо:

index.php

$moderators[] = '<a href="profile'.$mod_id.'.html'">'.pun_htmlspecialchars($mod_username).'</a>';

изменить на

$moderators[] = '<a href="profile'.$mod_id.'.html">'.pun_htmlspecialchars($mod_username).'</a>';

и

$forum_field = '<h3><a href="forum'.$cur_forum['fid'].'.html'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

изменить на

$forum_field = '<h3><a href="forum'.$cur_forum['fid'].'.html">'.pun_htmlspecialchars($cur_forum['forum_name']).'</a></h3>';

а в файле viewtopic.php

$username = '<a href="profile'.$cur_post['poster_id'].'.html'">'.pun_htmlspecialchars($cur_post['username']).'</a>';

изменить на

$username = '<a href="profile'.$cur_post['poster_id'].'.html">'.pun_htmlspecialchars($cur_post['username']).'</a>';

ну и конечно в .htaccess убрать упоминание про upolovnikov.ru, я понимаю конечно, фамилия редкая, но скромнее надо быть батенька, скромнее smile

Редактировался alko (2008-04-08 02:42:24)

Подвал доски

Под управлением FluxBB. Хостинг Hostens