Тема: php скрипт регистрация/авторизация пользователей

Скачал скрипт авторизции/регистрации пользователей, не могут понять что делать дальше со скриптом.

Помогите пож. разобраться:

<?php
//данные для работы с MySQL
//сервер в большинстве случаев менять не требуется
$DBSERVER = "localhost";
//пользователь и пароль
$DBUSER = "";
$DBPASS = "";
//база данных
$DB = "";
?>

заранее благодарю!

2

Re: php скрипт регистрация/авторизация пользователей

alexander_21777
Полагаю вместе со скриптом должен идти .sql файл содержащий структуры таблиц, которые необходимо развернуть в базе данных MySQL.
Необходимо создать БД, если она еще не создана и импортировать .sql файл.

Данные для подключения к MySQL, а также создание базы данных, или имя уже созданной, следует узнать у хостера.

Re: php скрипт регистрация/авторизация пользователей

Уважаемый Hanut.
Я использую локальную машину и пользуюсь Denwer3.
Мне просто нужно вставить скрипт регистрации\авторизации в сайт, и стал следовать инструкции инсталяции скрипта. Но у меня возникли коекакие проблемы вот с этими переменными.
А конкретно с двумя:
<?php
//данные для работы с MySQL
//сервер в большинстве случаев менять не требуется
$DBSERVER = "localhost";
//пользователь и пароль
$DBUSER = "";
$DBPASS = "";
//база данных
$DB = "";
?>

Помогите пож.

4

Re: php скрипт регистрация/авторизация пользователей

alexander_21777
localhost трогать не надо, пусть так и будет.
$DB - здесь необходимо прописать имя базы данных в которой развернуты таблицы. Сперва эту БД надо создать, для чего зайдите в phpMyAdmin, на главной странице впишите имя создаваемой БД и жмите кнопочку.

Re: php скрипт регистрация/авторизация пользователей

Уважаемые программисты!
Помогите мне пожалуйста со скриптом регистрации и авторизации пользователей. Я очень хочу научиться, но конкретный дуб в программировании.
Подкажите пожалуйста, может где есть готовый скрипт.
Вообще у меня есть скрипт, но в нем используется MySQL. Уважаемый Hanut, вы подсказали создать мне таблицу в phpmyadmin, но не могли бы вы по подробнее описать процесс создания?

6

Re: php скрипт регистрация/авторизация пользователей

alexander_21777
При запуске phpMyAdmin, сразу на первой странице есть поле "Новая база данных".
Если я правильно помню, то у Денвера есть даже отдельная страница для создания БД. Посмотрите повнимательнее. Таким образом тоже можно ее создать.

7 (изменено: alexander_21777, 2009-05-15 14:33:30)

Re: php скрипт регистрация/авторизация пользователей

Сейчас скачал скрипт без БД. Хотел проверить, но ничего не получается. Посмотрите пожалуйста своим опытным глазом, может Вы найдете ошибку:

1) Архив состоит из папки registration, в которую входят файлы: login.php, registration.php, register.txt

2) login.php:

<!--Здесь ни чего не менять!!!-->

<?php

  if ( isset ($name) AND isset ($password))
{

$data = File ("register.txt");
$pass =($password);
for ($i=0;$i<count($data);$i++) {
$dat = explode (";", $data[$i]);
if ($name == $dat[0] && $pass."\r\n" == $dat[1])
  {
  echo "<b><center>Зона зарегистрированных пользователей</b><p><a href=\"\">Ссылка 1</a><p><a href=\"\">Ссылка 2</a>";
  exit;
  }
}
}

?>

<!--Здесь можно изменить html код, но не меняйте строку "form action"-->
<html>
<body>
<b><center>Вход для зарегистрированных пользователей</b></center>
<form action=<?php print $PHP_SELF ?> method=post>
<table>
<tr><td>Введите ваш логин<td><input type=text size=15 name=name></tr>
<tr><td>Ваш пароль<td><input type=text size=15 name=password></tr>
</table>
<p><input type = submit value="????">
</form>
</body>
</html>

?>




3) registration.php:

<!--Здесь ни чего не менять!!!-->

<?php
if ( isset ($name) AND isset ($password) )
{
$data = File ("register.txt");
for ($i=0;$i<count($data);$i++) {
$dat = explode (";", $data[$i]);
if ($name == $dat[0])
{
echo "<b><center>Извините, пользователь с таким именем уже зарегистрирован!";
exit;
}
}
$pass =($password);
$fp = fopen ("register.txt", "a");
flock ( $fp, 1);
fputs ($fp, $name.";".$pass."\r\n");
flock ($fp, 3);
fclose ($fp);
echo "<b><center><h2>Спасибо вы зарегистрированны!";
exit;
}
?>
<!--Здесь можно изменить html код, но не меняйте строку "form action"-->
<html>
<body>
<center><b><h3>РЕГИСТРАЦИЯ</h3></b></center><p>
<form action=<?php print $PHP_SELF ?> method=post>
<table>
<tr><td>
<center>Ваше имя<td><input type=text size=15 name=name></tr><br>
<tr><td><center>Выберите пароль<td><input type=text size=15 name=password></tr><br>
</table>
<p><input type=submit value="Зарегистрироваться">
</form></body></html>
?>




3) register.txt:

Пуста.

8

Re: php скрипт регистрация/авторизация пользователей

alexander_21777
Здесь MySQL не нужен, данные пользователей хранятся в register.txt. Установите на файл register.txt права 666, чтобы в него могла осуществляться запись.

Re: php скрипт регистрация/авторизация пользователей

А почему не работает на локальной машине?

Re: php скрипт регистрация/авторизация пользователей

Hanut
Спасибо тебе ОГРОМНОЕ за помощь.
У меня все заработало, но только на моем серваке в нете.
Но всеравно если, будет возможность, объясни пож. почему на локальной не работает.
wink

11

Re: php скрипт регистрация/авторизация пользователей

alexander_21777
Посмотрите ошибки в error.log на локальном сервере, может там будет за что зацепиться.

Re: php скрипт регистрация/авторизация пользователей

Спасибо, за помощь.
Все нормально, спасибо. Тока мне теперь надо создать форму поттверждения пароля в registration.php, а так все Ok.

13

Re: php скрипт регистрация/авторизация пользователей

Уважаемые форумчане, подскажите плз., код проверки авторизации пользователя.
Есть на сайте PHP код для записи данных вводимых пользователем в файл.

Файл vopros.php

<form action="action.php" method="post">
<p>Ваше имя<br>
<input name="name" type="text" class="lnews_data" size="30">
</p>
<p>Ваш пароль<br>
<input name="password" type="text" class="lnews_data" size="40">
</p>
<p>Ваш вопрос<br>
<textarea name="mes" cols="50" rows="5" class="lnews_data"></textarea>
</p>
<p>
<label>
<input type="submit" name="submit" id="submit" value="спросить">
</label>
</p>
</form>

Файл action.php

<?php
$_POST[''];
$file=fopen('mes.txt','a+');
fputs($file,$_POST['name']);
fputs($file,$_POST['password']);
fputs($file,$_POST['mes']."\r");
fclose($file);
echo 'Данные записаны в файл!'; //можно удалить
header("Location:vopros.php"); // редирект на предыдущую страницу
?>

//Кстати редирект не работает, не пойму почему

14

Re: php скрипт регистрация/авторизация пользователей

survey
Уберите echo перед header().

15

Re: php скрипт регистрация/авторизация пользователей

Всем доброго времени!

У меня такая проблемка, может кто поможет.
Извиняюсь если данная тема где то есть, но я искал вроде ничего конкретного не нашел.

Есть каталог на сайте закрытый при помощи файла .htaccess.
При входе в данный каталог выскакивает форма для ввода логина и пароля. авторизация проходит успешно и все работает отлично.

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

Может кто подскажет код обработчика??? Плиз...
Заранее спасибо

16

Re: php скрипт регистрация/авторизация пользователей

lavalex
Эта проблема не имеет стандартного решения, но вы можете поискать примеры HTTP авторизации через HTML форму в Интернете, некоторые из них используют связку JavaScript + PHP.

17

Re: php скрипт регистрация/авторизация пользователей

Hanut сказал:

lavalex
Эта проблема не имеет стандартного решения, но вы можете поискать примеры HTTP авторизации через HTML форму в Интернете, некоторые из них используют связку JavaScript + PHP.

Есть хоть какое то решение?
Я уже неделю лазию по всему инету и ни как не могу найти то-то подходящее.
Буду признателен за любые варианты.

18

Re: php скрипт регистрация/авторизация пользователей

lavalex
Пример HTTP авторизации через HTML форму. Написно, что работает в IE6 и Firefox, но я не проверял.
http://www.peej.co.uk/articles/http-aut … forms.html

19

Re: php скрипт регистрация/авторизация пользователей

уважаемые программисты прошу вас помочь мне решить одну проблемку с авторизацией
<title>Обработчик</title>
<? include ("blocks/bd.php");
if(isset($_POST['submit']))

{
$login = $_POST['login'];
$pas = $_POST['pas'];
$result = mysql_query("SELECT pas FROM users WHERE login='$login'",$db);
$myrow = mysql_fetch_array($result);
if ($pas==$myrow['pas'])
{

$_SESSION['login']=$login;
$_SESSION['pas']=$pas;
Header("Location: system/index.php");
exit;
}
else
{
Header("Location: index.php");
exit;
}
}
?>

пишет ошибку : Warning: Cannot modify header information - headers already sent by (output started at z:\home\localhost\www\sait\login_proc.php:2) in z:\home\localhost\www\sait\login_proc.php on line 15 это когда я ввожу правильную инфу, а когда неправильную то ошибка в 20 строке.
Заранее спс!

20

Re: php скрипт регистрация/авторизация пользователей

falke5
Перед PHP кодом у вас стоит обычный html (<title>Обработчик</title>), то есть скрипт уже отправил заголовок пакета о наличии данных по адресу страницы. Дальше у вас идет перенаправление с помощью функции header, которая в свою очередь отправляет заголовки пакетов о необходимости перенаправления на другую страницу, что и вызывает конфликт.

Надо сделать так, чтобы вся логика с перенаправлениями была до вывода собственно html кода.

21

Re: php скрипт регистрация/авторизация пользователей

спасибо большое всё работает, капец такая тупая ошибка)

Сообщение добавлено Tue Nov 24 15:36:04 2009
подскажите плиз какой код нужно написать в каждом файле папки system что бы выполнялась проверка пользователя ввошёл он на данную страницу через форму входа или прописав в строке состояния,если  в случаее последнего то нужно тогда совершить переход на обычный индекс.
Заранее спасибо!

22

Re: php скрипт регистрация/авторизация пользователей

falke5 сказал:

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

Не смог понять.

Во всех файлах должны проверяться переменные логина в сессии и правильность этих данных.

23

Re: php скрипт регистрация/авторизация пользователей

вот я попробовал написать проверку у меня в третей строку ошибка, возможно программа не знает от куда брать переменную $_POST['login'] подскажите в чём проблема!
<? include ("blocks/bd.php");

$login = $_POST['login'];
if (isset ($_POST['login']))
{
$result = mysql_query("SELECT * FROM users WHERE login='$login'",$db);
$myrow = mysql_fetch_array($result);
}
else
{
header("location: ../login.php");
exit;
}
?>

24

Re: php скрипт регистрация/авторизация пользователей

falke5
POST - это данные переданные через форму (из <form>).
В данном случае вам надо использовать сессии ($_SESSION['login']). Только обратите внимание, что перед тем, как использовать глобальный массив $_SESSION, должна быть строка:
session_start();

25

Re: php скрипт регистрация/авторизация пользователей

Спасибо супер всё работает!
У меня остался ещё один вопрос по этой теме:
Для выхода из зоны пользователя нужно использовать какой то скрипт или его можно просто отправить на обычный индекс?