Задание:
Регистрация на сайте файл reg.php
if($_POST['submit']=="Регистрация"){
if($_POST['pass']==$_POST['pass2']){
$pass=md5($_POST['pass']);
}
else{
$msg="Введенные пароли не совпадают";
}
if($pass!=0){
$res=mysql_query("SELECT * from `users` where `email`='{$_POST['email']}'");
$data=mysql_fetch_assoc($res);
if($data['id']){
$msg="Пользователь с таким email уже зарегистрирован";
}
else{
$insert=mysql_query("insert into `users` (`name`,`email`,`pass`) values ('{$_POST['name']}', '{$_POST['email']}','{$pass}')");
}
if ($insert=='TRUE'){
$select=mysql_query("SELECT * from `users` where `email`='{$_POST['email']}'");
$data1=mysql_fetch_array($select);
$auth=md5($_POST['email']).md5($data1['id']);
/*Отправка email*/
$to=$_POST['email'];
$subject="Подтверждение регистрации";
$body="Для завершения регистрации пройдите по <a href='".$_SERVER['DOCUMENT_ROOT']."/11/aktiv.php?email=".$email."&auth=".$auth."'>ссылке </a>";
require "sendmail.php";
/********/
$email=$_POST['email'];
echo "/aktiv.php?email=".$email."&auth=".$auth;
$msg="Для завершения регистрации проверьте почту!";
}
}
}
?>
<meta charset="utf-8">
<link rel="stylesheet" href="style.css">
<div id="content">
<div class="center">
<div class="row">
<?echo $msg;?>
<h1>Регистрация</h1>
<form method="post">
<p><input required type="text" name="name" placeholder="Имя"></p>
<p><input required type="email" name="email" placeholder="email"></p>
<p><input required type="password" name="pass" placeholder="пароль"></p>
<p><input type="password" name="pass2" placeholder="повторите пароль"></p>
<p><input type="submit" name="submit" value="Регистрация"></p>
</form>
<p><a href="login.php">Войти</a></p>
</div>
</div></div>
Подтверждение регистрации activ.php
$res=mysql_query("SELECT * from `users` where `email`='{$_GET['email']}'");
$data=mysql_fetch_array($res);
if($data['id']){
$auth=md5($_GET['email']).md5($data['id']);
echo $auth . "<br>";
if($auth==$_GET['auth']){
$upd=mysql_query("update `users` set `auth`='1' where`email`='{$_GET['email']}'");
if($upd='TRUE'){
echo 'Поздравляем, регистрация прошла успешно!';
}
}
else {echo 'Возникла ошибка, попробуйте зарегистрироваться заново!';}
}
2. По нажатию кнопки Добавить — создать сессию и куки с вашим именем, и по нажатию кнопки Удалить — удалить сессию и куки с вашим именем.
Данные получить из формы.
<?
session_start();
if(isset($_POST['submit_add'])) {
/*
создать сессию и куки с вашим именем
*/
} elseif(isset($_POST['submit_del'])) {
/*
удалить сессию и куки с вашим именем
*/
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Сессии и Куки</title>
</head>
<body>
<form action="index.php" method="post">
<input type="text" name="name" placeholder="Напишите сюда ваше имя"><br>
<input type="submit" value="Добавить" name="submit_add">
<input type="submit" value="Удалить" name="submit_del">
</form>
</body>
</html>
[spoiler title=»Решение»]
<?
session_start();
if(isset($_POST['submit_add'])) {
// обрабатываем полученную строку, очищаем ее от лишних пробелов и удаляем теги если имеются
$name = strip_tags(trim($_POST['name']));
if(!isset($_COOKIE['name'])) {
setcookie('name', $name);
echo "Куки успешно сохранены, Хорошая работа " . $name . "<br>";
} else {
echo 'Здравствуй ' . $_COOKIE['name'] . ' Куки уже были сохранены, необходимо их удалить. <br>';
}
if(!isset($_SESSION['name'])) {
$_SESSION['name'] = $name;
echo "Сессия успешно создана, Хорошая работа " . $_SESSION['name'] . "<br>";
} else {
echo 'Здравствуй ' . $_SESSION['name'] . ' Сессия уже была создана, необходимо ее удалить. <br>';
}
} elseif(isset($_POST['submit_del'])) {
if(isset($_SESSION['name']) or isset($_COOKIE['name'])) {$name = $_SESSION['name'] or $_COOKIE['name'];}
setcookie('name', '');
unset($_SESSION['name']);
echo "Все данные были успешно удалены...<br>Хорошая работа $name";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Сессии и Куки</title>
</head>
<body>
<form action="index.php" method="post">
<input type="text" name="name" placeholder="Напишите сюда ваше имя"><br>
<input type="submit" value="Добавить" name="submit_add">
<input type="submit" value="Удалить" name="submit_del">
</form>
</body>
</html>
[/spoiler]