Система (регистрации)авторизации пользователей на сайте

Статус
В этой теме нельзя размещать новые ответы.

Фанат

oncle terrible
Команда форума
не надо реагировать на эти реплики
это пишет человек write-only
как собачка, он страдает желанием пометить как можно больше тем.
скоро ему отрежут возможность этим заниматься.
 

BlacKing

Новичок
то то я смотрю что сам Фанат только и посылает людей в поиск или в faq. причём на любой вопрос.
 

Фанат

oncle terrible
Команда форума
сопли подбери.
не дорос ещё судить о том, куда я кого посылаю.

А с флудом завязывай.
Твоя манера писать всякий бред уже напрягает. Если не перестанешь - придётся принимать меры.
 

BlacKing

Новичок
слава богу до таких госу я расти не собираюсь, а то аж страшно становится прямо... меры? принимай тоже мне испугал, мне пофиг на мнение чуваков, которым бы только повыпендриваться.


gl
 

Gorynych

Посетитель PHP-Клуба
offtopic: Фанат, я тут прочитал все это и понял, что на вскидку могу прикинуть систему:

- на куках
- на сессиях (не считаем сессионную куку частью систему, ага?)
- на сочетании того и другого
- вообще без них (используя средства веб-сервера)

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

и вот что ужасно: ни что из этого в отдельности не может служить объяснением логики. И алгоритма приводить тут то же нельзя: алгоритмизируется частное решение, а не те два-три краеугольных принципа, лежащие в основе. Ужас какой-то! Как страшно жить!
 

Gorynych

Посетитель PHP-Клуба
leeroy

нет, это только на первый взгляд привлекательная идея. На самом деле она таит в себе большую дыру для перехвата. Фактически, это будет частичная имитация сессий через URL.
 

user999

Новичок
По совету Johny-kot написал код:

<form method="get">
<input type=text name=userName>
<input type=password name=userID>
<input type=Submit name=Submit>
</form>
<?
$connect = mysql_connect("localhost", "root", "");
mysql_select_db("db_db");
$result = mysql_query("SELECT * FROM users WHERE user LIKE '$userName' && pass LIKE '$userID'");
while ($row = mysql_fetch_array($result)) {
$userName=$row["user"];
$userID=$row["pass"];}

if(AuthFunc($userName, $userID) == true)
{
session_start();
$_SESSION['userName'] = $userName;
$_SESSION['userID'] = $userID;
header("Location: $init_url");
}

if (isset($_REQUEST[session_name()]))
{
session_start();
$userName = $_SESSION['userName'];
$userID = $_SESSION['userID'];
$welcome = "Здравствуйте $userName";
} else {
$welcome = "Вход не произведен";
}?>

В итоге:
Fatal error: Call to undefined function: authfunc()
Функция не работает.
Может кто знает как ее переписать. Потому что я уже мучился с постраничным выводом с переменной $_SERVER['PHP_SELF'], а надо было $REQUEST_URI.
Может и в этом случае есть альтернативный случай.
 

mak_sim2001

Новичок
antivir
да и сессии можно не использовать, если собираешся таскать по сайту ничего кроме пары флагов-значений, характеризующих пользователя. Тогда одними куками можно спокойно обойтись - можно просто записывать в куки хэш md5 от связки логин+пароль и ID пользователя, а при заходе на сайт сверять md5 хэш логин+пароль из базы со значением из куки. если сходятся - это зарегестрированный пользователь. иначе - нет.
Автор оригинала: antivir
минуту. а если куки отключены то что, сессии думаешь спасают?
Афигеть, так что систему авторизации если куки отключены зделать нельзя???
 

user999

Новичок
Все же может кто подскажет, что не верно в коде пишу?

-~{}~ 17.11.06 02:03:

Короче ответа я похоже не дождался :(

Сделал так
$result = mysql_query("SELECT * FROM users WHERE user='$userName' && pass='$userID'");
while ($row = mysql_fetch_array($result)) {
$userName1=$row["user"];
$userID1=$row["pass"];
}
echo $userName, $userID;

if (@$userName == @$userName1 && @$userID == @$userID1)
// всместо if (AuthFunc ($userName, $userID) == true)


Но возникла другая проблема:

Warning: Cannot send session cookie - headers already sent by (output started at z:\home\localhost\www\admin\aut.php:7) in z:\home\localhost\www\admin\aut.php on line 20

Warning: Cannot send session cache limiter - headers already sent (output started at z:\home\localhost\www\admin\aut.php:7) in z:\home\localhost\www\admin\aut.php on line 20

Warning: Undefined variable: init_url in z:\home\localhost\www\admin\aut.php on line 23

Warning: Cannot add header information - headers already sent by (output started at z:\home\localhost\www\admin\aut.php:7) in z:\home\localhost\www\admin\aut.php on line 23

В чем может быть дело?
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху