id юзера в адресной строке вместо логина
логин не является секретом нигде и никогда, он даже в базе лежит в открытом виде
вы же знаете емейлы всех своих друзей, а они являются логином во вконтакт например
но в то же время эти друзья врятли рассказали вам и свои пароли
мне интересно, почеми когда всё как Вконтакте, то это считается правильным сразу
во… очень доходчивый ответ… все сомнения развеялись враз. Спаисибо!)
Вконтакт это такой идеал?
Не, я ни с кем не спорю, просто человек сомневался, но как только сказали, что Вконтакте точно так же, то это оказалось доходчивым объяснением
могу я понимать ваши слова, как мнение знающего человека? Дело в том, что я завел тему не от того что я умный и хочу переделать систему, а потому что я в этом вопросе мало чего понимаю… и в конце моего поста (см. вначале) я спросил: "или я зря заморачиваюсь и ниче страшного в этом нет?". просто на этот вопрос хотелось слышать четкий, аргументировнный ответ (как это сделал Администратор). Ваш ответ считается таковым?вы покупаете мерседес и будете ставить двери как у жигулей ибо так теще нравится?
видимо все так сложно, что приходится рисковать))))решение есть но не до конца проверенное, если рискнёте протестировать — опубликую…
итак — для смелых )
открываем /core/classes/user.class.php находим строку (~1396)
public static function getProfileURL($user_login) {
public static function getProfileURL($user_login) { $inDB = cmsDatabase::getInstance(); $id = $inDB->get_field('cms_users', "login='{$user_login}'", 'id'); return '/' . self::PROFILE_LINK_PREFIX . 'id'.$id; }
/////////////////////////////// VIEW PROFILE ///////////////////////////////////////////////////////////////////////////////////////// if ($do=='profile'){ $inCore->loadLib('clubs'); if (!$id){ $login = $inCore->request('login', 'str', ''); $id = $inDB->get_field('cms_users', "id='{$id}' ORDER BY is_deleted ASC", 'id'); }
/////////////////////////////// VIEW PROFILE ///////////////////////////////////////////////////////////////////////////////////////// if ($do=='profile'){ $inCore->loadLib('clubs'); if (!$id){ $id = $inCore->request('id', 'int', ''); }
//RewriteRule ^users/([a-zA-z0-9\.]*)$ /index.php?view=users&do=profile&login=$1 '_uri' => '/^users\/([a-zA-z0-9\.]+)$/i', 'do' => 'profile', 1 => 'login' );
//RewriteRule ^users/id([0-9]+)$ /index.php?view=users&do=profile&id=$1 '_uri' => '/^users\/id([0-9]+)$/i', 'do' => 'profile', 1 => 'id' );
кстати данный хак позволит более точно отбирать условия для плагина user_tip… )