Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите новичку с ЧПУ
Форумы портала PHP.SU » » Вопросы новичков » Помогите новичку с ЧПУ

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

1. varafat - 04 Мая, 2012 - 10:32:01 - перейти к сообщению
Доброго времени суток!
У меня на сайте ссылки типа:
CODE (htmlphp):
скопировать код в буфер обмена
  1. http://sit.loc/obl.php?table=rajon&page=ripki_rn
  2. http://sit.loc/obl.php?rn=ripki_rn&table=object&page=ljub_kam_polubot
  3. http://sit.loc/g.php?object=ljubech&menu=ripki_rn_m&g=g&gb=ljubech


Кому не сложно объясните как сделать ТУТ ЧПУ.

пробую так
CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteRule ^table/([\w-]+)/?$ table/obl.php?do=table&page=$1 [NC]
(для первого случая)
но результат нулевой

и вопще мозно ли сделать чтоб ЧПУ был для всех типов ссылок...

ПеСе: извините за нубство я оченьновичок....
2. avtor.fox - 04 Мая, 2012 - 10:38:35 - перейти к сообщению
DeepVarvar написал неплохой скрипт ЧПУ. Все запросы идут всего лишь в один файл (единая точка входа) Улыбка
Вот ссыль ЧПУ
3. varafat - 04 Мая, 2012 - 14:30:50 - перейти к сообщению
Тоесть я так понял можно просто скопировать то чно написал автор у себе в файлы и оно должно работать... понял - скопировал, и вуаля ни одна страница не грузится а выдает ошибку денвера

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.


что я дулаю не так, подскажите пожалуйста... Растерялся Меланхолия
4. avtor.fox - 04 Мая, 2012 - 18:54:39 - перейти к сообщению
Для начала нужно понять какая магия происходит в приведённом коде. У Вас ошибка в файле htaccess. Код файла в студию Улыбка
5. varafat - 04 Мая, 2012 - 23:53:12 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteEngine on
  2. RewriteBase /
  3. RewriteCond %{REQUEST_FILENAME} !-d #не папка
  4. RewriteCond %{REQUEST_FILENAME} !-f #не файл
  5. RewriteRule ^(.*) index.php?q=$1 [L]


все так как у автора метода....
Как-то тяжело мне дается ЧПУ Слёзы в глазах
6. avtor.fox - 04 Мая, 2012 - 23:56:04 - перейти к сообщению
От блин. Файл же правильный. Не волнуйтесь. Гугл мне подсказал что ошибка всего-навсего в серваке Закатив глазки
7. varafat - 04 Мая, 2012 - 23:58:42 - перейти к сообщению
Не понял та я спокоен как удав... а что за ошибка???
и что нада делать???
8. avtor.fox - 05 Мая, 2012 - 00:06:03 - перейти к сообщению
Давайте я больше не буду Вам подсказывать по данной ошибке. Так я как я не уверен что знаю как устранить её. Прошу прощения.

// Я попробовал данный код. У меня работает. Попробуйте вбить в гугле данную ошибку. Возможно поможет найти решение.
9. varafat - 05 Мая, 2012 - 00:09:08 - перейти к сообщению
вот сИжу бью Гугл... Нунчаки
(Добавление)
так начну по порядку:
1. файл хтаксес лежит в папке сайт.лок (рядом с WWW)
2. LoadModule rewrite_module modules/mod_rewrite.so даная строчка "открыта" (в этом файле httpd.conf)

вот такой код в начале индекс.пхп есть
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. // вот тут будут наши "части"
  4. $params = array();
  5.  
  6. // получили строку
  7. $query_string = str_replace("q=","",trim($_SERVER['QUERY_STRING']));
  8.  
  9. // на всякий случай декодируем
  10. $query_string = urldecode($query_string);
  11.  
  12. // разбиваем на массив
  13. $query_params = explode("/",$query_string);
  14.  
  15. // и проверяем
  16. // а вдруг в конец слеш не дописали?
  17. // да и почистим сразу от SQL-инъекций
  18. foreach ($query_params as $query_param)
  19.   if ($query_param != "")
  20.     $params[] = mysql_real_escape_string($query_param);
  21.  
  22. // посмотрим что получилось
  23. var_dump($params);


ну и что в хтаксес. я писал выше...

если что не так подскажите...
10. sKaa - 05 Мая, 2012 - 06:27:29 - перейти к сообщению
error.log апача в студию

Цитата:
1. файл хтаксес лежит в папке сайт.лок (рядом с WWW)

Я могу ошибаться во всяких ваших денверах и прочих джентельменских наборах, но .htaccess должен лежать в корне самого сайта, а не рядом с папкой www
11. avtor.fox - 05 Мая, 2012 - 07:53:43 - перейти к сообщению
sKaa пишет:
Я могу ошибаться во всяких ваших денверах и прочих джентельменских наборах, но .htaccess должен лежать в корне самого сайта, а не рядом с папкой www


Точно! Сказал бы ТС сразу про это Улыбка
12. varafat - 05 Мая, 2012 - 09:12:40 - перейти к сообщению
Тоесть в папке WWW? Я проверял - и так не работает Огорчение
(Добавление)
Или я опять тупллю Однако
13. sKaa - 05 Мая, 2012 - 09:51:38 - перейти к сообщению
В той-же папке, что и твой index.php. А вообще я повторюсь, лог апача в студию.
14. varafat - 05 Мая, 2012 - 09:55:47 - перейти к сообщению
sKaa пишет:
error.log апача в студию


CODE (htmlphp):
скопировать код в буфер обмена
  1. [Sat May 05 09:11:14 2012] [alert] [client 127.0.0.1] Z:/home/sit.loc/www/.htaccess: RewriteCond: bad flag delimiters
  2. [Sat May 05 09:11:15 2012] [alert] [client 127.0.0.1] Z:/home/sit.loc/www/.htaccess: RewriteCond: bad flag delimiters
  3.  
...................
CODE (htmlphp):
скопировать код в буфер обмена
  1. [Sat May 05 09:51:39 2012] [alert] [client 127.0.0.1] Z:/home/sit.loc/.htaccess: RewriteCond: bad flag delimiters
  2. [Sat May 05 09:51:40 2012] [alert] [client 127.0.0.1] Z:/home/sit.loc/.htaccess: RewriteCond: bad flag delimiters
  3. [Sat May 05 09:51:49 2012] [notice] Parent: Received shutdown signal --


Вот, в разных месах, на всякий случай...
(Добавление)
по ошибке мало инфы нашел.... и вразумительного ничего...
15. sKaa - 05 Мая, 2012 - 10:10:23 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1. # Enable rewrite engine and route requests to framework
  2. RewriteEngine On
  3. RewriteBase /
  4. RewriteCond %{REQUEST_FILENAME} !-l
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteCond %{REQUEST_FILENAME} !-d
  7. RewriteRule .* index.php [L,QSA]

(Добавление)
varafat пишет:
по ошибке мало инфы нашел.... и вразумительного ничего...

Достаточно просто перевести

 

Powered by ExBB FM 1.0 RC1