|
|
|
| Подскажите, какой код надо вставить в начале страницы. чтоб на нее можно было попасть только через страницу логина | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 21:29)
| | :)
хм......
session_start();
if(!$_SESSION['valid_user']){include 'join.php'; exit;}
почитай про сессии и авторизацию... | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 21:39)
| | че-то у меня ничего не получается. Ну вот если мне надо сделать так, что при попадании на эту страницу юзеру высвечиваеться форма логина и пароля и при правильном заполнении ему открываеться все страница. Но в то же время, если он попал на эту страницу через страницу логина, то ему сразу высвечиваться вся страница. Напиши пожайлуста скрипт, если условно это будет страница 123.php | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 22:05)
| | страницой не отделаешься:)))))))))))))))))))))))
форма регистрации.. запись данных в БД.... форма авторизации - проверка пользователя назначение сессии... обработка условий.... | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 22:09)
| | у меня есть скрипт. я сам добавляю пользователей и регистрирую их. (без БД). у каждого своя страница, но она не защищена. если знать ее адрес, можно папасть без логина и пароля | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 22:19)
| | ну ты прикалист!
значит системы регистрации некакой не сушествует и авторизации тоже... просто есть тобой придуманные имена файлов типа страница_васи.пхп страница_маши.пхп и тд и тп? | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 22:24)
| | нет, просто не юзери регистрируються, а я их ввожу в базу данных. и каждому юзеру отводиться своя страница. этот скрипт я скачал уже готовым. но эти индивидуальные страницы не защищены. | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 21:29)
| | самая наипростейшее, что я мог придумать:
index.php - форма
<html>
<head>
<title>форма</title>
</head>
<body>
<form action="handler.php" method="post">
<input name="name" type="text">
<input name="pass" type="password">
<input type="submit" value="Send">
</form>
</body>
</html>
|
handler.php - обработчик
<?php ## handler.php
$authorise="";
if(!empty($_POST['name'])&&!empty($_POST['pass'])){
$name=$_POST['name'];##имя полученое постом
$pass=md5($_POST['pass']);##пароль полученый постом
}elseif(!empty($_COOKIE['name'])&&!empty($_COOKIE['pass'])){
$name=$_COOKIE['name'];##имя полученое из куки
$pass=$_COOKIE['pass'];##пароль полученый из куки
}else{
$name="";
$pass="";
}
$file=file("users.txt");##файл с зарегеными пользователями
##при регистрации пользоватля, рекомендуется обробатывать пароль и имя на наличие символа "|", если есть то заменять на "/"
##инфа в нём хранится вот так:
##user|pass
if(!empty($name)&&!empty($pass)){
for($u=0;$u<count($file);$u++){
$str=explode("|",$file[$u]);
if(($str[0]==$name)&&(md5($str[1])==$pass)){
setcookie("name",$name,time()+24*60*60);
setcookie("pass",$pass,time()+24*60*60);
$authorise="true";
break;
}
}
}
if($authorise){
include"only_reg_users.php";
}else{
print"ERROR!";
include"index.php";##файл -форма
}
?>
|
users.txt - пользователи
only_reg_users.php - страница только для зарегистрированных
<html>
<head>
<title>Только для зарегестрированных пользователей</title>
</head>
<body>
<?php
print "Привет ".$_COOKIE['name'];
?>
</body>
</html>
|
.htaccess - защита
<Files users.txt>
deny from all
</Files>
<Files only_reg_users.php>
deny from all
</Files>
|
| |
|
|
|
|
|
|
|
для: deman-b
(27.11.2006 в 23:15)
| | если хочеш что бы у каждого пользователя была своя страница, то можеш
это сделать на странице only_reg_users.php - в зависимости от куки выводить нужную инфу.. | |
|
|
|
|
|
|
|
для: deman-b
(27.11.2006 в 23:18)
| | А если юзер сразу введет only_reg_users.php, ему не надо будет вводить пароль? | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 23:27)
| | чувак внеси свой пароль в переменную в саму страниу авторизации если такова имееться а там сессию вешай и выдавай инфо | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 23:32)
| | бля, у меня ничего не получаеться. у тебя нет уже готового скрипта? | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 23:32)
| | так есть БД или нет??? | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 23:42)
| | ты понимиаешь это тебе не 2 + 2 сложить.. надо хоть чивото понимать | |
|
|
|
|
|
|
|
для: pashastar
(27.11.2006 в 23:27)
| | если пользователь введёт only_reg_users.php, то сервер пошлёт его))
вот так:
Forbidden
You don't have permission to access /tmp/sub83/only_reg_users.php on this server.
--------------------------------------------------------------------------------
Apache/2.0.47 (Win32) Server at 162.168.1.1 Port 80
|
| |
|
|
|
|
|
|
|
для: deman-b
(27.11.2006 в 23:54)
| | БД нет. мне просто надо сделать так, чтоб бе пароля он не попал на эту страницу | |
|
|
|
|
|
|
|
для: pashastar
(28.11.2006 в 16:29)
| | На будущее:
Пользуйся лучше куками. Но перед тем, как выдавать страницу пользователю, сверяй куки с паролем из бд, и если совпадает, то открывай доступ к странице и наоборот..
p.s. А вообще, как уже говорили выше, нужно подумать хотя бы. Возьми листок бумаги и продумай, что и как тебе нужно сделать и делай это по твоему алгоритму. Если знаний не хватает - накачай готовых сркиптов и разбирись в них, тогда мож чего поймёшь.
p.s.s. Система авторизации - это штука интимная. И для каждого сайта должна быть написана самим создателем, если он заботится о безопасности. А готовые решения - это лишь временное решение проблемы для новичков. | |
|
|
|