Пишем говнокодим - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir  
Пишем говнокодим
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

  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума