A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 303

Аутентификация и авторизация пользователя – делаем с нуля (Часть 2)

Аутентификация и авторизация пользователя – делаем с нуля (Часть 2)

Автор: Mowshon.
Опубликовано 24 июля 2011
в рубрике PHP, Примеры

Просмотров: 3581.
Подписаться на комментарии по RSS.

Продолжаем работу над нашими скриптами. Работать мы будем в кодировке UTF-8, проверяем кодировку в наших редакторах, в Notepad2 заходим в File -> Encoding -> Выбираем UTF-8, сохраняем страницу как index.php

1. База данных

Создаем базу данных, она будет отвечать за данные пользователей.

База будет называться mysite и в ней таблица users

CREATE TABLE `users` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`login` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`log_date` DATETIME NOT NULL ,
UNIQUE (
`login`
)
) ENGINE = MYISAM ;

id - Уникальный идентификатор пользователя

login - Логин пользователя

password - Зашифрованный пароль

log_date - Дата последнего визита

2. Форма для аутентификации

Далее нам нужен каркас для страницы аутентификации.

Сохраняем файл как login_form.html в папку template

<h2>Аутентификация</h2>
<form name="form1" method="post" action="">
  <table border="0" cellpadding="0" cellspacing="0" width="245">
    <tbody>
<tr>
      <td width="101" height="30">Логин</td>
      <td width="144"><input name="login" id="login" type="text"></td>
    
</tr>
    
<tr>
      
<td>Пароль</td>
      
<td><input name="password" id="password" type="text"></td>
    
</tr>
    
<tr>
      
<td> </td>
      <td align="right"><input name="Submit" value="Вход" type="submit"></td>
    
</tr>
  </tbody></table>
</form>

Получается вот такая форма

3. Конфигурационный файл

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

Для этого понадобится три функции mysql_connect(), mysql_select_db(), mysql_close()

Создаем файл config.php и сохраняем в корень, там где и файл index.php

<?php
/* ---------------
** Конфигурационный файл
** --------------- */
// Данные для поделючения к базе
$Config = array(
 "dbhost" => "localhost",  // IP где распаложена база данных
 "dbname" => "mysite",     // Название базы данных
 "dbuser" => "root",       // Пользователь от MySQL
 "dbpass" => "qwerty",     // Пароль от MySQL
);
// Подключемся к базе
$db = mysql_connect($Config['dbhost'], $Config['dbuser'], $Config['dbpass']) or die("Could not connect: ". mysql_error());
// Выбираем базу с которой мы будем работать
mysql_select_db($Config['dbname'], $db) or die ("Невозможно подключится к базе {$Config['dbname']}, причина: " . mysql_error());
// Кодировка базы
mysql_query("SET NAMES UTF8");
?>

Комментариев: 1

  1. Дмитрий | 19.12.2011 в 18:43:04 | #1

    Спасибо огромное, посмотрел 2ва урока, вроде как понял как работает схема, я думаю админку заделать таким скриптом и добавить права админу будет то что нужно если на сайте 2-ва или больше админов будет

Оставьте комментарий!

Гость
Комментатор / хотите им стать

Чтобы стать комментатором введите email и пароль. Напишите комментарий. В дальшейшем ваша связка email-пароль, позволит вам комментировать и редактировать свои данные. Не забудьте про активацию (инструкция придет на ящик, указанный при регистрации).

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

(обязательно)