| |
|
|
| | Помогите пожалуста, у меня такой вопрос я на движке сайта (книга практика создания веб сайтов) решил сделать вот такой примерно сайт ( [url]2spb.ru [/url]), сейчас остановился на авторизации пользователей : использовал модуль авторизации (из ресурсов скачать) , сделал ссылку для входа, добавления пользователя.
Получается такая ситуация пользователь может сам добавиться с главной страницы и потом по замыслу я хочу направить его тут же на страницу добавления комерческого обьекта в базу (но впрос в том что я хотел бы чтоб к логину и паролю привязался именно этот вариант и в дальнейшем пользователь мог зайдя по паролю попадать в свою страницу редактитрования о об обьекте и добавлении нового или удалении)
Напишите что можно использовать и как спасибо.
Думаю надо внести изменения в файл adduser.php
<?php
///////////////////////////////////////////////////
// Система авторизации HTTP-Basic авторизации
// 2003-2005 (C) IT-студия SoftTime (http://www.softtime.ru)
// Симдянов И.В. (simdyanov@softtime.ru)
///////////////////////////////////////////////////
// Устанавливаем соединение с базой данных
require_once("config.php");
// Модуль безопасности
require_once("security_mod.php");
// Проверяем переданы ли имя пользователя и пароль
if(empty($_POST['name'])) exit("Не указано имя нового пользователя");
if(empty($_POST['pass'])) exit("Не указан пароль пользователя");
// Проверяем равны ли пароли
if($_POST['pass'] != $_POST['pass_again']) exit("Пароли не равны");
// Проверяем, чтобы не было никаких SQL-инъекций
if (!get_magic_quotes_gpc())
{
$_POST['name'] = mysql_escape_string($_POST['name']);
$_POST['pass'] = mysql_escape_string($_POST['pass']);
}
$_POST['name'] = str_replace("'","`",$_POST['name']);
$_POST['pass'] = str_replace("'","`",$_POST['pass']);
// Если всё нормально создаём нового пользователя
$query = "INSERT INTO userlist VALUES (NULL,'$_POST[name]','".md5($_POST['pass'])."')";
if(mysql_query($query))
{
echo "Новый пользователь создан";
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>
</HEAD></HTML>";
}
else
{
exit("Ошибка при добавлении нового пользователя");
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: lev-chev
(13.08.2007 в 20:59)
| | | Не понятно, что вызывает затруднение. | |
| |
|
|
| |
|
|
| |
для: cheops
(13.08.2007 в 23:10)
| | | Вопрос в том что нужно сделать чтобы привязать конкреный обьект к конкретному пользователю
а может сессии попробовать | |
| |
|
|
| |
|
|
| |
для: lev-chev
(13.08.2007 в 23:49)
| | | Попробуй так:
<?php
session_start();
///////////////////////////////////////////////////
// Система авторизации HTTP-Basic авторизации // 2003-2005 (C) IT-студия SoftTime (http://www.softtime.ru)
// Симдянов И.В. (simdyanov@softtime.ru) ///////////////////////////////////////////////////
// Устанавливаем соединение с базой данных require_once("config.php");
// Модуль безопасности
require_once("security_mod.php");
// Проверяем переданы ли имя пользователя и пароль
if(empty($_POST['name'])) exit("Не указано имя нового пользователя");
if(empty($_POST['pass'])) exit("Не указан пароль пользователя");
// Проверяем равны ли пароли
if($_POST['pass'] != $_POST['pass_again']) exit("Пароли не равны");
// Проверяем, чтобы не было никаких SQL-инъекций
if (!get_magic_quotes_gpc()) {
$_POST['name'] = mysql_escape_string($_POST['name']);
$_POST['pass'] = mysql_escape_string($_POST['pass']);
}
$_POST['name'] = str_replace("'","`",$_POST['name']);
$_POST['pass'] = str_replace("'","`",$_POST['pass']);
// Если всё нормально создаём нового пользователя
$query = "INSERT INTO userlist
VALUES (NULL,'$_POST[name]','".
md5($_POST['pass'])."')";
if(mysql_query($query))
{
$_SESSION['name']=$name;
$_SESSION['pass']=$pass;
echo "Новый пользователь создан";
echo "<HTML><HEAD> <META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'> </HEAD></HTML>";
}
else
{
exit("Ошибка при добавлении нового пользователя");
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: lev-chev
(13.08.2007 в 23:49)
| | | Да, необходимо поместить какой-то флаг в сессии (например уникальный идентификатор пользователя), который будет сигнализировать о том, что авторизация произошла. Объект соответственно помечать этим флагом. | |
| |
|
|