Вторник, 23.04.2024, 10:45
Главная Регистрация RSS
Приветствую Вас, Гость
Меню сайта
Категории раздела
Delphi [12]
С++ [0]
С# [1]
PHP [7]
Мини-чат
Наш опрос
Оцените мой сайт
Всего ответов: 23
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Главная » 2011 » Декабрь » 21 » Пишем скрипт регистрации php
13:52
Пишем скрипт регистрации php
Скрипт написан на PHP, для хранения информации о пользователях мы использовали базу данных MySQL.

Для удобства создадим файл, в котором будет осуществляться подключение к БД. Этот файл мы будем инклудить ко всем остальным скриптам, где требуется связь с БД.

Содержимое файла «connectdb.php»:
Code

< ?
//данные о хосте, пользователе и базе данных
$host = 'localhost';
$user = 'root';  
$pass = 'pass';  
$dbname = 'test';
   
// подключаемся и выбираем бд, которую указали выше
if(!mysql_connect($host,$user,$pass))
  die('Не удалось подключиться к серверу MySql!');
elseif(!mysql_select_db($dbname))
  die('Не удалось выбрать БД!');
?>


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

Содержимое файла со скриптом инсталяции «install.php»:

Code

< ?
include('connectdb.php');// подключение к серверу MySql и выбор БД
   
// sql-скрипт для создания таблицы
$sql='CREATE TABLE users(
  id INT NOT NULL AUTO_INCREMENT,
  login VARCHAR(15),
  pass TEXT,
  email VARCHAR(150),
  PRIMARY KEY(id)
);';
   
//выполняем sql-запрос
if(!mysql_query($sql)){
  echo 'Ошибка при создании таблицы в БД!';
} else {
  echo 'Всё прошло отлично, таблица создана!';
}
?>


Пользователей нужно регистрировать — напишем для этого скрипт!
Сразу скажу, что все вводимые данные не проверяются на правильность и скрипт уязвим для взломов, поэтому вам придётся самим доработать его как нужно.

Регистрация заключается в добавлении информации о пользователе (Логин, пароль…) в базу данных.

Создадим файл «register.php» и добавим в него следующее:

Code

< ?
include('connectdb.php');// подключение к серверу MySql и выбор БД
   
if (($_POST['login']!='') ||  
  ($_POST['pass1']!='') ||  
  ($_POST['pass2']!='') ||  
  ($_POST['email']!='')) { // если все данные для регистрации введены, то продолжаем
  $pass1 = $_POST['pass1'];
  $pass2 = $_POST['pass2'];
   
  if (strcmp($pass1, $pass2) == 0) {// если пароли совпадают, то продолжаем
  $login = $_POST['login'];
  $email = $_POST['email'];
   
  //проверяем наличие в БД пользователя с логином $login
  $sql='SELECT * FROM users WHERE login='.$login; // скрипт для поиска по логину в таблице users
  if (!($res=mysql_query($sql)) || (mysql_num_rows($res) == 0)) { // если количество найденых записей ноль, то продолжаем
  // sql-скрипт для добавления даных в таблицу
  $sql = 'INSERT INTO users(login, pass, email)  
  VALUES("'.$login.'", "'.$pass1.'", "'.$email.'")';
  if(mysql_query($sql)) {// выполняем скрипт
  echo 'Пользователь '.$_POST['login'].' успешно зарегистрирован! <a href="/index.php">Форма для входа.';
  } else {
  echo 'При регистрации произошла ошибка, <a href="/register.php">повторите попытку</a>.';
  }
  } else echo 'Пользователь с таким логином уже зарегистрирован!';
  } else echo 'Введенные пароли не совпадают, <a href="/register.php">повторите попытку</a>.';
} else {
?>
  <form method='post' action='/register.php'>
  Введите Логин: <input type='text' size='30' name='login' />
  Введите e-mail: <input type=text size=30 name='email' />
  Пароль: <input type='password' name='pass1' size='30' />
  Повторите пароль: <input type='password' name='pass2' size='30' />
  <input type='submit' value='Регистрация' />
< ?  
}
?>
</form>


Далее нам нужно создать форму для авторизации и скрипт управления авторизацией.

Всё это будет находиться в файле «index.php»:

Code

< ?
/*!!!Чтобы не повредить работоспособности  
  скрипта выше этого комментария  
  не размещайте вообще ничего!!!*/
include('connectdb.php');// подключение к серверу MySql и выбор БД
$userinfo='';
$state='0';
if( (isset($_COOKIE['login'])) & (isset($_COOKIE['pass'])) ) {// если в куках лежит логин и зашифрованый пароля
  if (!isset($_GET['exit'])) {// если кнопка выход не была нажата
  $login=$_COOKIE['login'];
  $pass=$_COOKIE['pass'];
   
  // проверяем наличие пользователя в БД и достаём оттуда пароль
  $sql="SELECT id, pass FROM users WHERE login='$login'";
  $res=mysql_query($sql);
  if(mysql_num_rows($res)>0){// если пользователь есть в БД
  $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД
  if(strcmp($pass,md5($userinfo['pass'])) == 0) { //проверяем схожесть пароля из БД с паролем из куков
   
  // достаём все данные из БД
  $sql="SELECT * FROM users WHERE login='$login'";
  $res=mysql_query($sql);
  $userinfo=mysql_fetch_array($res); // в этой переменной будет лежать вся информация о пользователе из БД
  $time=time();
  // устанавливаем куки для запоминания статуса пользователя
  setcookie("login",$login,$time+1800);
  setcookie("pass",$pass,$time+1800);
  $state = 1;// статус, если 1, тогда пользователь авторизован
  }
  }
  } else {
  //обнуляем куки, если была нажата кнопка выход
  setcookie("login");
  setcookie("pass");
  }
}
if($state != 1) {// если после проверки куков, оказалось, что пользователь не авторизован, то идем дальше
  if( (isset($_POST['login'])) & (isset($_POST['pass'])) ){ // если пользователь ввёл логин и пароль
  $login = $_POST['login'];  
   
  // проверяем наличие пользователя в БД и достаём оттуда пароль
  $sql = "SELECT id, pass FROM users WHERE login='$login'";
  $res = mysql_query($sql);
  if(mysql_num_rows($res)>0) {// если пользователь есть в БД
  $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД и номер пользователя
  $pass = $_POST['pass'];
  if(strcmp($pass,$userinfo['pass'])==0){
   
  // достаём все данные из БД
  $sql="SELECT * FROM users WHERE login='$login'";
  $res=mysql_query($sql);
  $userinfo=mysql_fetch_array($res);// в этой переменной будет лежать вся информация о пользователе из БД
  $time=time();
  // устанавливаем куки для запоминания статуса пользователя, пароль шифруем
  setcookie("login", $login, $time+1800);
  setcookie("pass", md5($pass), $time+1800);
  $state = 1;// статус, если 1, тогда пользователь авторизован
  }
  }
  }
}
if($state != 1) {
?>
<form method="post" action="/index.php">
Логин: <input type="text" size="30" name="login"/>
Пароль: <input type="password" name="pass" size="30"/>
<input type="submit" value="Войти"/>
</form>
<a href="/register.php">Регистрация</a>
< ?
} else {
  echo 'Вы вошли на сайт! Ваш Логин: '.$userinfo["login"].'Выш E-mail: '.$userinfo["email"].' <a href="/index.php?exit=y">Выход</a>';
}
?>


Если нужно проверить авторизован пользователь или нет, то проверяем переменную $state, она должна быть равна 1.
В массиве $userinfo содержится вся информация из БД об авторизованном пользователе.

Теперь проверим как это всё работает. В файле «connectdb.php» укажите свои настройки БД.

После этого нужно создать таблицу, для этого следуем в браузере «http://вашсайт.com/install.php» и смотрим результат выполнения скрипта.


Далее отправляемся на стартовую страницу «index.php».

Идём по ссылке «Регистрация», заполняем форму и жмём на кнопку «Регистрация».


Наконец идём по ссылке «Форма для входа», вводим логин и пароль и наслаждаемся=)


Ну а теперь берите эти коды и прикручивайте куда вам надо.
Категория: PHP | Просмотров: 3592 | Добавил: vavilov8 | Теги: MySQL, PHP, авторизация, регистрация | Рейтинг: 0.0/0
Всего комментариев: 241 2 3 »
24 Montanakrp  
0
Здравствуйте дамы и господа!
http://povelitelisnov.ru/forum/viewtopic.php?f=32&t=83474
https://forum.resmihat.kz/viewtopic.php?f=2&t=444490
http://www.cherylove.com/forum/viewtopic.php?f=5&t=8918
https://batonrougerocks.boardhost.com/viewtopic.php?pid=7284#p7284
http://kick.gain.tw/viewthread.php?tid=4120092&extra=

Есть такой интересный сайт для заказа услуг стоматологии в Минске.К вашим услугам лучшие стоматологи Минска с многолетним стажем.
У нас работают стоматологи высшей категории, доценты и профессора — врачи с высоким уровнем профессионализма и личной ответственности, способные действовать в команде и постоянно совершенствоваться. Наша профессия — это ваша здоровая и красивая улыбка!Мы всегда на связи с вами! Мы предлагаем комплексный подход в решении стоматологических проблем.это команда единомышленников, одни из лучших специалистов в области эстетической и восстановительной стоматологии, ортопедии, ортодонтии, челюстно-лицевой хирурги и периодонтологии, эндодонтии, что позволяет достигать наилучших результатов лечения.Мы верим в построение отношений, основанных на доверии и взаимопонимании. Наши пациенты становятся нашими друзьями.
От всей души Вам всех благ!

23 Vonaldmab  
0
Приобретая дачный комплекс для ребенка, необходимо учитывать возрастную категорию играющих. Каждое изделие рассчитано на эксплуатацию людьми разной весовой категории. Для карапузов подойдут и тонкие пластиковые изделия, в то время, как подросткам желательно купить усиленные конструкции. Цена товаров напрямую зависит от стоимости использованных материалов. Поэтому прежде, чем совершить покупку спорткомплекса, мы настоятельно рекомендуем ознакомиться с характеристиками конкретной модели.Нам очень нравится спорткомплекс Карамелька. А можно мольберт взять, а от счетиков отказаться ?
<a href=http://sport-ok.ru/catalog/252/>Как выбрать тренажер бубновского</a>
<a href=http://sarb.in.ua/explore/russkij-stil/item/381-vospominaniya-o-proshedshih-sborah-v-deneshah.html>Спортивные уличные тренажеры</a>
<a href=http://www.kulturizm63.ru/nikolaev-vitalii>Уличные тренажеры купить украина</a>

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

22 Vonaldmab  
0
• курьером по адресу.Новые поступления надувных матрасов фирмы BESTWAY !
<a href=http://aikidojo.ru/sektsii_aykido_v_moskve__0_38.html>Уличные тренажеры для детей купить.</a>
<a href=http://health-tools.ru/0-0-0-1/>Подробности манжеты для ног у нас на сайте.</a>
<a href=http://rsou.ru/category/boks>Манжеты для тренажеров.</a>

Купить на складе:есть.Есть детские игровые комплексы домашние и уличные. Уличные можно всегда дополнить домиком, качелями, песочницей или батутом.

21 Trealdmab  
0
ДСК "Маугли-12-01"Это еще один важный момент, которому необходимо уделить самое пристальное внимание. Конечно, уличные детские спортивные комплексы для дачи можно располагать в любой зоне сада. Однако на такой площадке ребенок должен чувствовать себя комфортно.
<a href=http://taksi-krim.ru/pcontact.htm>Производство уличных тренажеров.</a>
<a href=http://stadiums.at.ua/news/2017-07-11-32577>Описание уличные тренажеры купить у нас на сайте.</a>
<a href=http://cskvvs.com/view_players_pol.php?num=97>Купить тренажеры бубновского.</a>

Детские игровые площадки купить - это увлекательный досуг малышей, функциональный и безопасный. Малые архитектурные формы с яркими деталями и тентом продумано скомбинированы и идеально смотрятся с натуральной древесиной , слегка тонированной. Эстетичные и привлекательные конструкции познакомят детей с игровыми развлечениями в виде спортивных тренировок. Наряду с внешней привлекательностью детские уличные площадки наделены износоусточивостью и стойкостью к повреждению, порадуют долговечностью службы.Стоимость спортивного комплекса «Чемпион» — 25 100 рублей.

20 Trealdmab  
0
Габариты комплекса: Длина 2630 х Высота 2500.Очень много полезной информации. Что делать, если шея затекла во время сна? Как правильно спать и просыпаться? Как диагностировать миозит и остеопороз? Обо всём этом и многом другом в статье.
http://smerch.org/vse-o-thekvondo
http://sarb.in.ua/explore/russkij-stil/item/381-vospominaniya-o-proshedshih-sborah-v-deneshah.html
https://yarbiz.info/?module=firms&action=view&idr=6222&ids=5407&id=371129

Мы понимаем, что уличное спортивное оборудование подвергается значительным нагрузкам, поэтому заранее закладываем в него большой запас прочности.Ни для кого не секрет, что физическую активность ребёнка нужно не ограничивать, а, наоборот, всячески поощрять. При этом необходимо разумная доля контроля. Оптимальным решением для грамотного направления неуемной энергии ребёнка в правильное русло станут игровые площадки для улицы – купить их можно в нашем интернет-магазине. Преимущества такой покупки очевидны:

19 Vonaldmab  
0
Габариты: 3.24x0.6x2.39 м.Упражнение «кошечка»: стоя на коленях на палубе, руки на ширине плеч, поочередно прогибать и выгибать спинку.
http://velodnepr.dp.ua/site/index.php?option=com_content&task=view&id=169
http://nsoul.ru/MagazinSportivnogoPitaniya/magazini-sportivnogo-pitaniya-v-moskve-adresa
http://fcstal.com.ua/ua/

Ассортимент спорт. товаров "КиндерСпортКлуб"Конечно, перед началом занятий ребенку нужно показать новые приспособления, рассказать, как правильно ими пользоваться. Со временем малыш сам придумает, как распорядиться спортивным комплексом, но на первых этапах нужно быть рядом, поддерживать и подсказывать, иначе интерес к занятиям пропадет.

18 Trealdmab  
0
Особенности детских уличных комплексов.Профессиональные уличные спортивные комплексы.
https://www.spainland.ru/modules.php?name=Topics
http://fbmo.ru/logic_20000076.html
http://chesskidsakkerman.com.ua/turnirny-sorevnovaniya

Таким обозом, приобретая наполнение для детских спортивных площадок, Вы делаете долгосрочные инвестиции в здоровье своих детей, помогаете им вырасти крепкими и сильными, прививаете любовь к спорту и, возможно, воспитываете будущих олимпийских чемпионов!Вы можете забрать свой заказ самовывозом в Киеве или воспользоваться нашей службой доставки.

17 Vonaldmab  
0
Развиваем детей. Поделки из шляпок желудей.Он создан для активных игр на даче. Занимает большое место, зато детям удобно в нем перемещаться, во время игры они не будут сталкиваться между собой. Основные элементы комплекса развивают ловкость ребенка, укрепляет его кисти и тренирует мышцы ног и рук.
http://vihrclub.ru/
http://www.silacheloveka.ru/cook.php?id=12781
http://molodezhka4.info/2020/05/

Для малышей до 5 лет. Любая детская комната «расцветёт» в компании с таким развивающим уголком Кроша.Внимание! Данный комплекс поставляется под заказ. Срок поставки заказа от 5 раб. дней!

16 Vonaldmab  
0
Оформить заказ на детский комплекс можно прямо на нашем сайте, или купить в представительстве компании в вашем регионе. Они есть в таких крупных городах, как: Москва, Санкт-Петербург, Казань, Уфа, Самара и Екатеринбург.Мощность 22 Вт, 2 канала.
http://stavki.dp.ua/stavki_na_rossiyskiy_futbol/main.html
http://buchma.vechir.com.ua/
http://tihii-omut.com.ua/2015/09/

Детский спортивный комплекс для дома KindWood Plus поможет вашему малышу расти здоровым, спортивным, ловким, сильным, а ещё он научиться считать, рисовать и разбираться в геометрических фигурах, благодаря наличию оригинальных атрибутов для интеллектуального и художественного развития. Подробнее.Концерн «Интер Атлетика»

15 Trealdmab  
0
В набор детского комплекса входят:архитектурные элементы (арки, ограждения, парковые диваны, лавки), установки для лазанья, канатные городки, игровые сетки.
http://bckiev.com.ua/ua/club/cheerleaders/
http://zolotoy-duplet.ru/page/o_klube
http://www.anross.ru/index.php?l0=questions

Игровые комплексы от Киндер-Атлетики.ДСК «Универсал» рассчитан на возраст от 7 лет. Между ступенями лестниц, спортивными снарядами выбрано оптимальное расстояние, позволяющее первоклассникам и подросткам взбираться вверх, выполнять упражнения. Уличный комплекс идеально подойдет для дачи, частного дома, школ, спортивно-игровых площадок.

1-10 11-20 21-24
Имя *:
Email *:
Код *: