Как создать авторизация и регистрация без баз данных
как организовать структуру сайта файлами без баз данных?
по какому принципу строится структура хранение данных в файлах? может, есть какие-то ссылки по этой.
Как сделать простейший поиск по сайту на html без баз данных
Добрый день. Как новичок в вопросе, понимаю, насколько тяжело объяснять таким как я примитивные.
Сообщение от UlanTengr 
Мне надо создать регистрация на сайте без баз данных. Нужно создать фаил и авторизация на сайте.
Ничего бывает. Главное что Вы осознали проблему. Успехов Вам.
| Меню пользователя @ pav1uxa |
367 / 405 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
Ну без баз данных никак. Другое дело в каком виде у тебя эта база данных будет. Для меня MySQL самый удобный способ, но если он не доступен можно хранить и в .txt, и в .xml, и прямо в .php. Для начала поставь чётко задачу, что конкретно ты хочешь сделать и какими ресурсами обладаешь. И конечно если это ни дипломка какая то, а реальный проект, однозначно надо менять хостинг, на тот, в котором будут доступен, хотя бы минимальный набор современных инструментов.
Регистрация: 07.07.2013
Сообщений: 90
База данных в любом случае нужна, это же данные, логин и пароль пользователей в конце концов!
А в каком она виде это решать тебе. mysql самый удобный и распространенный способ, можно и в txt файл все это записывать, через двоеточие к примеру «username: pass:data» перебирать в цикле, или еще как нибудь. Еще придется закрыть доступ к файлу из внешки, чтобы какой-то умник не слил твою базу. Но работать будет)
А зачем это тебе? Сейчас почти все, даже бесплатные хостинги, имеют mysql.
Регистрация: 02.12.2013
Сообщений: 33
тогда можно показать самым простым способом
Добавлено через 6 минут
Сообщение от AinurKA29 
А зачем это тебе? Сейчас почти все, даже бесплатные хостинги, имеют mysql.
хочу я понять как все это работаетБ и мне это интересно
Регистрация: 07.07.2013
Сообщений: 90
Вот, писал не сам, нашел в нете, быстренько пролистал, должно работать,не лучшая идея записывать логин и пасс в разные файлы(по моему), но смысл понятен там.
Вложения
| www.rar (4.7 Кб, 202 просмотров) |
367 / 405 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
Сообщение от UlanTengr 
тогда можно показать самым простым способом
Да не вопрос))
Кликните здесь для просмотра всего текста
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
form method='post'> Введите свой логин: input type='text' name='login'/> input type="submit" value="войти" /> form> $samaja_prostaja_db = array('Вовочка','Димочка'); if($_POST['login']) { $name = htmlspecialchars($_POST['login']); if (in_array($name, $samaja_prostaja_db)) { echo "Привет ".$name."! Теперь когда мы знаем что ты избранный, ты можешь идти дальше))"; }else { echo "Я не знаю тебя $name"; } } ?>
Регистрация: 31.08.2015
Сообщений: 1
Эта регистрация не работает! Там вроде кодировка не работает! И регистрация регистрирует, а входить отказывается из за кодировки! А поправить уже месяц кодировку и все другое поправляю, а там ничего. исправь
Добавлено через 1 минуту
плохо работает
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Регистрация и авторизация с использованием базы данных
Как сделать регистрацию на C# с использованием базы данных SQL?
Регистрация без базы данных
Где можно найти скрипт регистрации без базы данных (сохранение в файлах) Примерные поля: Ник.
Работа с бд MySQL без сервера баз данных
Изучая PHP скрипты, я нашел скрипт, который работает с бд без сервера баз данных. Скрипт и файл бд.
Сайт с базами и без баз данных, какая разница?
Сайт с базами и без баз данных, какая разница? в чем разница и что если у меня нет баз данных на.
Система регистрации пользователей на PHP, MySql и jQuery
Для начала нам необходимо создать таблицу, которая будет хранить записи о регистрациях.
CREATE TABLE `tz_members` ( `id` int(11) NOT NULL auto_increment, `usr` varchar(32) collate utf8_unicode_ci NOT NULL default '', `pass` varchar(32) collate utf8_unicode_ci NOT NULL default '', `email` varchar(255) collate utf8_unicode_ci NOT NULL default '', `regIP` varchar(15) collate utf8_unicode_ci NOT NULL default '', `dt` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`id`), UNIQUE KEY `usr` (`usr`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Поле id — auto_increment, это значит, что для каждого нового пользователя автоматически будет назначаться новый id, на единицу больше предыдущего. Поле usr — unique, тем самым у нас не будет двух пользователей с одинаковыми логинами. Также необходимо указать параметры для соединения с базой в файле connect.php.
HTML
Файл index.php. Регистрационная форма:
В массиве $_SESSION хранятся данные о сессии. В нашем коде мы проверяем $_SESSION[‘usr’] и $_SESSION[‘id’], если эти переменные заданы, значит посетитель авторизован, что открывает ему доступ к данным, которые недоступны незарегистрированным пользователям. Основное содержание страницы:
Easy registration management with PHP & jQuery
This is a .
PHP
Настало время приступить к серверной части нашей системы регистрации.
define('INCLUDE_CHECK',true); require 'connect.php'; require 'functions.php'; session_name('tzLogin'); // создаем сессию session_set_cookie_params(2*7*24*60*60); // время хранения cookie 2 недели session_start(); if($_SESSION['id'] && !isset($_COOKIE['tzRemember']) && !$_SESSION['rememberMe']) < // если авторизован, но не было задано Remember me: $_SESSION = array(); session_destroy(); // удаляем сессию >if(isset($_GET['logoff'])) < $_SESSION = array(); session_destroy(); header("Location: demo.php"); exit; >if($_POST['submit']=='Login') < $err = array(); // хранит ошибки if(!$_POST['username'] || !$_POST['password']) $err[] = 'All the fields must be filled in!'; if(!count($err)) < $_POST['username'] = mysql_real_escape_string($_POST['username']); $_POST['password'] = mysql_real_escape_string($_POST['password']); $_POST['rememberMe'] = (int)$_POST['rememberMe']; $row = mysql_fetch_assoc(mysql_query("SELECT id,usr FROM tz_members WHERE usr='' AND pass='".md5($_POST['password'])."'")); if($row['usr']) < // если все правильно $_SESSION['usr']=$row['usr']; $_SESSION['id'] = $row['id']; $_SESSION['rememberMe'] = $_POST['rememberMe']; setcookie('tzRemember',$_POST['rememberMe']); >else $err[]='Wrong username and/or password!'; > if($err) $_SESSION['msg']['login-err'] = implode('
',$err); // сохраняем сообщение об ошибке header("Location: demo.php"); exit; >
Если не задан параметр tzRemember (например, из-за перезапуска браузера) мы удаляем сессию, т.к. пользователь не отметил «Remember me».
else if($_POST['submit']=='Register') < $err = array(); if(strlen($_POST['username'])32) < $err[]='Your username must be between 3 and 32 characters!'; >if(preg_match('/[^a-z0-9\-\_\.]+/i',$_POST['username'])) < $err[]='Your username contains invalid characters!'; >if(!checkEmail($_POST['email'])) < $err[]='Your email is not valid!'; >if(!count($err)) < // если нет ошибок $pass = substr(md5($_SERVER['REMOTE_ADDR'].microtime().rand(1,100000)),0,6); // Generate a random password $_POST['email'] = mysql_real_escape_string($_POST['email']); $_POST['username'] = mysql_real_escape_string($_POST['username']); mysql_query(" INSERT INTO tz_members(usr,pass,email,regIP,dt) VALUES( '".$_POST['username']."', '".md5($pass)."', '".$_POST['email']."', '".$_SERVER['REMOTE_ADDR']."', NOW() )"); if(mysql_affected_rows($link)==1) < send_mail( 'demo-test@example.com', $_POST['email'], 'Registration System Demo - Your New Password', 'Your password is: '.$pass); $_SESSION['msg']['reg-success']='We sent you an email with your new password!'; >else $err[]='This username is already taken!'; > if(count($err)) < $_SESSION['msg']['reg-err'] = implode('
',$err); > header("Location: demo.php"); exit; > $script = ''; if($_SESSION['msg']) < // показываем авторизационную форму. $script = ' '; >
Мы храним ошибки в массиве сессии, это позволит нам использовать их даже после редиректа.
CSS
Код css для формы доступен в исходниках. Код страницы:
body,h1,h2,h3,p,quote,small,form,input,ul,li,ol,label < /* The reset rules */ margin:0px; padding:0px; >body < color:#555555; font-size:13px; background: #eeeeee; font-family:Arial, Helvetica, sans-serif; width: 100%; >h1 < font-size:28px; font-weight:bold; font-family:"Trebuchet MS",Arial, Helvetica, sans-serif; letter-spacing:1px; >h2 < font-family:"Arial Narrow",Arial,Helvetica,sans-serif; font-size:10px; font-weight:normal; letter-spacing:1px; padding-left:2px; text-transform:uppercase; white-space:nowrap; margin-top:4px; color:#888888; >#main p < padding-bottom:8px; >.clear < clear:both; >#main < width:800px; /* Centering it in the middle of the page */ margin:60px auto; >.container < margin-top:20px; background:#FFFFFF; border:1px solid #E0E0E0; padding:15px; /* Rounded corners */ -moz-border-radius:20px; -khtml-border-radius: 20px; -webkit-border-radius: 20px; border-radius:20px; >.err < color:red; >.success < color:#00CC00; >a, a:visited < color:#00BBFF; text-decoration:none; outline:none; >a:hover < text-decoration:underline; >.tutorial-info
jQuery
Наша система регистрации готова!
Как сделать регистрацию и авторизацию пользователей на сайте

Не так давно один из моих посетителей попросил меня написать статью о том, как сделать регистрацию и авторизацию пользователей на сайте. Собственно, выполняю его просьбу, и в этой статье я расскажу о том, как это делается.
Существует несколько способов создания регистрации и авторизации пользователей, но в этой статье я разберу свой любимый — через механизм сессий или cookie.
Первым делом, если Вы хотите сделать регистрацию у себя на сайте, то необходимо понимать, где будут храниться данные о пользователях. Можно хранить в обычном текстовом файле, в XML-файле, либо в базе данных. Первые два варианта — очень опасные, поэтому не рекомендую Вам ими пользоваться. А вот третий вариант — хранение информации о пользователях в базе данных — самый популярный, и именно этим способом хранения информации я советую Вам пользоваться.
С местом хранения определились. Теперь перейдём непосредственно к алгоритму авторизации:
- Создать форму регистрации на HTML.
- Получить данные из формы в скрипте-обработчике.
- Проверить полученные данные, и если они некорректны, то сделать редирект обратно на форму регистрации.
- Если данные корректны, то записать их в базу данных.
Вот и весь процесс регистрации пользователя на сайте. То есть регистрация — это сохранение информации о пользователе на сайте.
Дальнейшим пунктом является авторизация пользователя на сайте, однако, прежде чем к нему переходить, расскажу об одном важном моменте в форме регистрации — пароле. Я Вам настоятельно рекомендую не хранить пароли в открытом виде (например так, «123456«). Обязательно их шифруйте, хотя бы с помощью функции md5(). И в базе данных храните именно зашифрованный пароль.
Теперь авторизация. Первое, что Вы должны понять — это то, что информация об авторизации должна где-то храниться. Самый простой вариант — это хранение информации в сессии (или в cookie). А теперь алгоритм:
- Создать форму авторизации пользователя на HTML, куда пользователь должен будет ввести свой логин и пароль.
- В скрипте-обработчике принять данные от пользователя. Если Вы меня послушались, и храните шифрованные пароли в базе данных, то сначала шифруйте полученный пароль. Если же в базе данных лежат открытые пароли, то шифровать не надо.
- Проверить правильность введённых данных, и если логин и пароль совпадают с существующим пользователем в базе данных, то записываете в cookie или сессию информацию с логином и шифрованным паролем (либо открытым паролем, если Вы его не шифровали).
- Если логин и/или пароль введены неверно, то делать редирект обратно на форму авторизации.
Теперь у Вас есть необходимая информация об авторизации пользователя, которая хранится в его cookie или на сервере (если сессия). Фактически, теперь Вам нужно эту информацию проверять на каждой странице сайта и сверять её аналогично проверке формы авторизации. То есть считываете из cookie (сессии) логин и пароль, и проверяете его. Если они верные, то показываете одну страницу (для зарегистрированных пользователей), а если неверные, то показываете другую страницу (для гостей).
И последнее. Как делается кнопка «Выход«? Очень просто. При нажатии на эту кнопку, стираются cookie, либо сессия. Таким образом, пользователь автоматически вылетает с сайта.
Как видите, всё элементарно, но при реализации этого алгоритма у Вас обязательно возникнет множество вопросов. Например, что делать при регистрации пользователя, логин которого уже имеется в базе данных. Реализация различных проверок входных данных, реализация проверки существования e-mail и прочее — всё это является достаточно сложным, если Вы делаете это в первый раз. Однако, самый сок я выдал. Если будут вопросы при реализации, то спрашивайте либо на форуме, либо в комментариях.
В данной статье я привёл лишь алгоритм, а чтобы научиться его реализовывать нужно знать PHP и MySQL, которые максимально подробно разобраны в этом обучающем курсе: http://srs.myrusakov.ru/php

![]()
Создано 05.05.2011 13:05:46
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
- Кнопка:
Она выглядит вот так: - Текстовая ссылка:
Она выглядит вот так: Как создать свой сайт - BB-код ссылки для форумов (например, можете поставить её в подписи):
Комментарии ( 114 ):
Adrenalin 15.10.2011 02:21:09
Респект и Уважуха тебе Михаил! Хочу задать два вопроса: — долго ли Ты обучался всему этому; — как сделать авторизацию пользователей как В Контакте (всмысле каждому пользователю разные страницы)? Твой постоянный читатель с Украины!
Admin 15.10.2011 13:10:06
Обучаться созданию авторизации не нужно. Нужно обучаться PHP и MySQL. Для этого мне потребовалось 2-3 месяца, а после пошло уже совершенствование, которое происходит и сейчас.
Adrenalin 07.11.2011 21:37:30
А в денвере (Denwer) нельзя создавать скрипты или страницы так, чтобы в одном окне код, а в другом результат? Общем как в html-редакторе.
Admin 07.11.2011 21:39:55
Нет, поскольку Denwer — это не редактор, а пакет сервера apache, интерпретатора php, mysql, phpmyadmin и так далее, но никак не html-редактор.
Adrenalin 07.11.2011 21:54:40
Видел в нете редакторы php. Это то же самое что и html-редактор? Или они не будут показывать виполнение скриптов?
Admin 07.11.2011 22:02:04
Это примерно то же самое, что и HTML-редакторы, только для PHP. Результата выполнения они показывать не будут.
Серый 21.10.2013 20:53:06
Здравствуйте, Михаил! А возможно ли сделать регистрацию на сайте без PHP, то есть просто ссылка на какой нибудь сторонний ресурс, где можно хранить базу подписчиков??)
Admin 21.10.2013 22:20:45
Да, можно. Только тогда будет не регистрация, а просто авторизация через сторонний сервис. Например, такое позволяют Яндекс, Контакт и многие другие популярные сервисы.
Серый 22.10.2013 07:23:05
А, например, смартреспондер, джастклик, или это все не то?
Admin 22.10.2013 11:53:34
Это не для регистрации пользователей.
