Вы не зашли.
#1.
nexus
Off
(2)
Участник
2013.06.16 07:07
Здрасте ребят!
Помогите решить проблемку, туплю уже два дня ..
Хочу сделать чтобы ссылки на сайте имели такой вид httр
/site.ru/nexus для анкет и такие для статей http://site.ru/vse-obo-vsem/
Вот код .htaccess
Код:
# этот код для папок. |
RewriteEngine on |
RewriteCond %{REQUEST_FILENAME} !-d |
RewriteCond %{REQUEST_FILENAME} !-f |
RewriteRule (.*) index.php?path=$1 [L,QSA] |
Код работает норм. Но как сделать чтобы еще и в профили пользователей были такие же ссылки. Я пробовал перечислять эти же условия, ниже этого кода, вот так
Код:
# этот код для анкет. profile.php?id=nexus |
RewriteCond %{REQUEST_FILENAME} !-d |
RewriteCond %{REQUEST_FILENAME} !-f |
RewriteRule (.*) profile.php?id=$1 [L,QSA] |
Но работает только либо анкеты либо папки. Ну конечно в данном примере работает только анкеты..
Вот как это объединить не могу вкурить ( я нуб в .htaccess. возможно поможет флаг
[OR], но куда его вставлять не знаю ( помогите пожалуйста :-)
Кстати раздела на этом форуме посвященному этому ЯП нет
Отредактировано nexus (2013.06.16 07:07)
а никак не сделать. выноси статьи в отдельную папку например. иначе просто не понятно перенаправлять на профиль или статью
#3.
nexus
Off
(2)
Участник
2013.06.16 09:09
Gemorroj и все же это как то можно сделать.. Тот же вконтактик, группы и профили. У дурова спросить чтоли
там 1 страница значит, и названия уникальны
#5.
nexus
Off
(2)
Участник
2013.06.16 11:11
дак хоть и 1 файл как условие написать (
Код:
span style="color: #0000BB"><?php$db = new PDO('');$qUsers = $db->prepare('SELECT COUNT(1) FROM users WHERE login = ?');$qPosts = $db->prepare('SELECT COUNT(1) FROM posts WHERE subject = ?');if ($qUsers->execute(array($_GET['name'])) && $qUsers->fetchColumn() > 0) { // это пользоватли include 'tpl_for_users.php';} elseif ($qPosts->execute(array($_GET['name'])) && $qPosts->fetchColumn() > 0) { // это статьи include 'tpl_for_posts.php';} else { // это хз что include 'tpl_for_error.php';} |
#7.
nexus
Off
(2)
Участник
2013.06.16 15:03
Gemorroj не знаю PDO
Но за идею спасибо, всё же просто!
$path = ($_GET['path'])? trim($_GET['path']) : '';
$qUsers = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `login` = '".mysql_real_escape_string($path)."' LIMIT 1"));
if($qUsers !== false && $path)
include'profile.php';
else
include'files.php';
#8.
nexus
Off
(2)
Участник
2013.06.17 12:12
Gemorroj, кстати, не по теме.. интересно прост
SELECT COUNT(*) - зацепить всё что можно а SELECT COUNT(1) это что делает?
то же самое.
на сколько я помню, в innodb не хранилась метаинформация по кол-ву записей и он ее пересчитывал выбирая указанные поля (* - все), соответственно 1 - никаких данных трогать не надо. вероятно в новых версиях mysql это уже исправили, но хз.
спасибо
Страниц: 1