Radiance |
Дата: Четверг, 17.07.2014, 15:47 | Сообщение # 1
|
Боец
Сообщений: 209
Статус: Offline
|
Давно я ничего не писал сюда, и решил сразу дать более менее объёмный материал. Итак, начиная с этого момента мы, моих постах, по кускам будем собирать ажцелыйблог, ну или еще что, я не знаю. Итак, что мы получим в этом туторе: Познакомимся с технологией AJAX, и немного jQuery (здесь только сухое применение, подробно расколупывать ничего не буду). Научимся худо-бедно фильтровать наши переменные. Ну и увидим еще маленько говнокода. Итак, начнем. Во первых, создадим форму, да и вообще верхнюю часть нашей страницы. Итак, создаем файл с именем head.php Код <html> <head> <title>Мой крутой сайт</title> <script type="text/javascript" src="http://radiance.cmhost.ru/js/jquery-1.5.1.min.js"></script> </head> <body> <!-- далее наш аякс. Особенность его в том, что его очень удобно использовать - будет отрабатывать для каждой формы с ID mainfirm, т.е. не нужно создавать сотню функций или отдельных скриптов для каждой формы. Он у нас сам получает method и action формы, обрабатывает и вешает результат на место формы --> <script language = "javascript"> $(function(){ $('#mainform').submit(function(e){
e.preventDefault();
var m_method=$(this).attr('method');
var m_action=$(this).attr('action');
var m_data=$(this).serialize(); $.ajax({ type: m_method, url: m_action, data: m_data, success: function(result){ $('#mainform').html(result); } }); }); }); </script> <center><h1>Мой крутой сайт</h1></center>
Далее - файл form.php
Код <form action = "reg.php" method = "post" id = "mainform"> <p>Придумайте логин:</p> <p><input type = "text" name = "login"></p> <p>Придумайте пароль:</p> <p><input type = "password" name = "pass1"></p> <p>Пароль еще раз:</p> <p><input type = "password" name = "pass2"></p> <p><button type = "submit">Зарегестрироваться</button></p> </form>
Далее - нам необходим файл connect.php, в котором будет открываться подключение к базу данных. Об этом тут я заморачиваться не буду, читаем эту тему и сами создаём файл коннекта. Далее - нам же нужен обработчик формы? Создаём файл reg.php Код session_start(); if (isset($_SESSION['login'])){ $login = $_POST['login']; $pass1 = $_POST{'pass1']; $pass2 = $_POST['pass2']; // получили данные из массива $_POST и присвоили их переменным. // теперь обработаем по минимуму $login = strip_tags($login); $login = htmlspecialchars($login); $pass1 = strip_tags($pass1); $pass1 = htmlspecialchars($pass1)l $pass2 = strip_tags($pass2); $pass2 = htmlspecialchars($pass2); // обработали, теперь проверяем. // для начала проверим, зарегестрирован ли такой логин, или нет include 'connect.php'; $query = mysql_query("SELECT `login` from users where `login` = '$login'"); // запрашиваем у БД из таблицы логин mysql_fetch_array($query); // преобразуем массив данных if ($query['login'] == $login){ die ("Аккаунт с таким логином уже существует!"); }else{ if ($pass1 == $pass2){ $token = md5('$login $query2 = mysql_query("INSERT into users(`login`, `pass`) values('$login', '$pass')"); $_SESSION['login'] = $login; $_SESSION['pass'] = $pass; echo 'Вы успешно зарегестрированы!'; }else{ die("Пароли не совпадают!"); } } }
Код деревянный и ясам хз, что он может выдать в итоге (не проверял, ес честно). По идее он должен проверить фходящие данные и отталкиваясь от результата либо записать юзера в базу, или не записать, ага.
Далее - profile.php Код <?php session_start(); ?> <h1>Профиль пользователя <? echo $_SESSION['login']; ?></h1> <p>Сюда можно поместить различную информацию, которую можно заставлять вписывать при регистрации, или еще что.</p>
Файл index.php
Код <?php session_start(); include 'head.php'; if (empty($_SESSION['login'])) { include 'reg.php';
}else{ include 'profile.php'; } ?> Я думаю, в кратце понятен ход мыслей. Самое интересное здесь - форма с аяксом. А я пошёл, ага. Адекватный профиль, авторизацию, чат,, валидации по почте или еще чему научимся делать в следующий раз.
Ну а я всё, совсем пошёл
Радик камбек :D
|
|
|
|