PHP password authentification script
Имам следния проблем. Направих си аз сайт, но искам да има нива на достъп - от админ до обикновен потребител (нещо като на PHPBB форумите).
Моля ако някои мойе да ми помогне да го напражя или (в най-добрия случай)ми даде подобен скрипт много ама много ще съм му благодарен [:D]
PHP password authentification script
Аз лично не мога да ти препоръчам нищо конкретно освен да погледнеш какво има тук:
http://www.hotscripts.com/PHP/Script...ion/index.html
PHP password authentification script
Здравеите според мен няма да ти е необходим само един скрипт ше трябва да си направиш таблици в примерно mySQL база данни за юзарите
като за начало ще трябва да си напраяиш login.html login.php send.php index.php
като в login.html схте си направиш username & password полета и субмит бутон ;) ме звучи лесно а ;)
в login.php трябва да имам мунимум 2 функции за отказа и за достъл нали се сешташ при грешна парола ;)
отденлно схте трябва да направиш логна да е обвързан с отделен фаил connect.php в който седят ID & pasword за базата данни
обикновенно connect.php се съхранява в папла <admin>и там се добавя фаила .htaccecc да за да се забрани достъпа до папка админ
Пример: ime-na-saita.com/admin/
в папка админ седят 2 фаила connect.php .htaccecc
.htaccecc забранява отварянето за да е може да се свали connect.php
В случая при зареждането на ime-na-saita.com/admin/ ще се отвори страница 404 ;))
-
от цялата работа наи е труден login.php защото тои ще индексира страница при разпознаване и страница за забрана
отделно след като се логне някои юзар трябва да напишеш и (куки)
за да може когато преминава от една страница към друга да не му иска парола ;) не звучи лесничко май ще трябва да прочетеш нещо за mySQL и php ;) както и аз ;) [:I]
PHP password authentification script
@Slero благорадя ти за линк-а, но аз вече прегледах какво има там.
Трябва ми нещо наистина много семпло, защото сега се уча и ще ми е трудно да разбера
такива сложни скриптове.
@Zoro благодаря ти човече. Всъщност аз вече "уж" направих нещо такова, но сега идва следния проблем:
Под Windows не мога да си подкарам MySQL(за целта ползвам EasyPHP 1.7), а под Linux Slackware 10.0 когато се опитвам да си отворя работата ми пише . . . FORBIDDEN а никъде из /var/www/htdocs няма файл .htaccess
Ако някой може да помогне ще съм му благодарен.
Благорадя на @Slero и @Zoro за отзивчивостта и на всички други, които ще помогнат :)
PHP password authentification script
сметнах че това което написах може да бъде ползно
време е да си призная аз тепърва ще уча с голямо желание PHP и mySQL срамее да си призная на 21 сам а не ги знам още [:)]
PHP password authentification script
Ей ти направо готово:
login.php
<font face="Courier New">
<?
session_start();
include_once("config.php");
if (!$_POST && !$_SESSION['uid']) {
echo "
<html>
<body>
<form name=\"login\" action=\"login.php\" method=\"POST\">
<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" align=\"center\">
<tr><td>
Потребител
</td><td>
<input type=\"text\" name=\"username\" size=\"15\">
</td></tr><tr><td>
Парола</td><td>
<input type=\"password\" name=\"password\" size=\"15\">
</td></tr>
<tr><td colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"Вход\">";
}
if (!empty($_POST)) {
$db = new sql_db($dbhost, $dbuser, $dbpassword, $dbase);
$q = "select password from admins where username='".$_POST['username']."';";
$pass = $db->sql_query($q) or die(pg_errormessage());
$pass = $db->sql_fetchfield($pass);
if (empty($_POST['password'])) {
echo "Празна парола";
die();
}
if ($pass != $_POST['password']) {
echo "Грешна парола";
die();
}
if ($pass == $_POST['password']) {
$_SESSION['uid'] = $_POST['username'];
header("Location: index.php");
}
}
?>
</font id="Courier New">
И тва го слагаш в началото на всеки файл:
<font face="Courier New">
session_start();
if (empty($_SESSION['uid']) && $_SERVER['PHP_SELF'] != '/login.php') {
header("Location: login.php");
}
</font id="Courier New">
PHP password authentification script
Апък да знаете на @fori ще му пратя една каса Болярка по пощата(може и по e-mailа ) :)
Много благодара човече. Сега ще го пробвам.
//Edit
Значи тука трябва MySQL. Този файл config.php какво трябва да съдържа?
значи пак съжелявам за ламерските въпроси, но се уча сега.
Благодаря предварително
PHP password authentification script
Значи ако ще ползваш mysql трябва да замениш pg_last_error() с mysql_error(), трябва ти клас за mysql - примерно този от phpbb и да го инклуднеш и него, а в конфига се записва:
$dbhost = "127.0.0.1"; //хоста на който е базата
$dbuser = "user"; //узера за базата
$dbpassword = "passwd"; //паролата за базата
$dbase = "dbase"; //базата
като в базата в таблица admins имаш колонки username и password
PHP password authentification script
@fori благодаря ти много много