Nikita
Освоившийся
Дата регистрации:
06.06.2012 22:12:07
Сообщений: 36
reg.php
<h1>Звездочками (*) обозначены поля, обязательные для заполнения.</h1>
<form action="save_user.php" method="post" enctype="multipart/form-data">
<p>
<label>Ваш логин *:<br/></label>
<input name="login" type="text" size="20" maxlength="20"/>
</p>
<p>
<label>Ваш пароль *:<br/></label>
<input name="password" type="password" size="20" maxlength="20"/>
</p>
<p>
<label>Повтор пароля *:<br/></label>
<input name="password" type="password" size="20" maxlength="20"/>
</p>
<p>
<label>Ваш E-mail *:<br/></label>
<input name="email" type="text" size="20" maxlength="100"/>
</p>
<p>
<label>Выберите аватар. Изображение должно быть формата jpg, gif или png:<br/></label>
</p>
<div style="margin-left: 300px;">
<?php include ("blocks/input_file.php"?>
</div><br />
<p>Введите код с картинки *:</p>
<p><img src="code/my_codegen.php"/></p>
<p><input type="text" name="code"/></p>
<p>
<input type="submit" name="submit" value="Зарегистрироваться"/>
</p>
</form>
save_user.php
<?php
if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
if (isset($_POST['code'])) { $code = $_POST['code']; if ($code == '') { unset($code);} }
if (isset($_POST['email'])) { $email = $_POST['email']; if ($email == '') { unset($email);} }
if (empty($login) or empty($password)or empty($code) or empty($email))
{
exit ("<p><span>Ошибка!</span><br>Вы ввели не всю информацию, вернитесь назад и заполните все поля!
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email))
{exit ("<p><span>Ошибка!</span><br>Неверно введен E-mail!
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"}
function generate_code()
{
$hours = date("H"
$minuts = substr(date("H", 0 , 1);
$mouns = date("m"
$year_day = date("z"
$str = $hours . $minuts . $mouns . $year_day;
$str = md5(md5($str));
$str = strrev($str);
$str = substr($str, 3, 6);
$array_mix = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
srand ((float)microtime()*1000000);
shuffle ($array_mix);
return implode("", $array_mix);
}
function chec_code($code)
{
$code = trim($code);
$array_mix = preg_split ('//', generate_code(), -1, PREG_SPLIT_NO_EMPTY);
$m_code = preg_split ('//', $code, -1, PREG_SPLIT_NO_EMPTY);
$result = array_intersect ($array_mix, $m_code);
if (strlen(generate_code())!=strlen($code))
{
return FALSE;
}
if (sizeof($result) == sizeof($array_mix))
{
return TRUE;
}
else
{
return FALSE;
}
}
if (!chec_code($_POST['code']))
{
exit ("<p><span>Ошибка!</span><br>Вы ввели неверно код с картинки.
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
$login = trim($login);
$password = trim($password);
if (strlen($login) < 5 or strlen($login) > 20) {
exit ("<p><span>Ошибка!</span><br>Логин должен состоять не менее чем из 5 символов и не более чем из 20.
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
if (strlen($password) < 5 or strlen($password) > 20) {
exit ("<p><span>Ошибка!</span><br>Пароль должен состоять не менее чем из 5 символов и не более чем из 20.
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
if (empty($_FILES['fupload']['name']))
{
$avatar = "avatars/net-avatara.jpg";
}
else
{
$path_to_90_directory = 'avatars/';
if(preg_match('/[.](JPG)|(jpg)|(gif)|(GIF)|(png)|(PNG)$/',$_FILES['fupload']['name']))
{
$filename = $_FILES['fupload']['name'];
$source = $_FILES['fupload']['tmp_name'];
$target = $path_to_90_directory . $filename;
move_uploaded_file($source, $target);
if(preg_match('/[.](GIF)|(gif)$/', $filename)) {
$im = imagecreatefromgif($path_to_90_directory.$filename) ;
}
if(preg_match('/[.](PNG)|(png)$/', $filename)) {
$im = imagecreatefrompng($path_to_90_directory.$filename) ;
}
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename)) {
$im = imagecreatefromjpeg($path_to_90_directory.$filename);
}
$w = 90;
$w_src = imagesx($im);
$h_src = imagesy($im);
$dest = imagecreatetruecolor($w,$w);
if ($w_src>$h_src)
imagecopyresampled($dest, $im, 0, 0,
round((max($w_src,$h_src)-min($w_src,$h_src))/2),
0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
if ($w_src<$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w,
min($w_src,$h_src), min($w_src,$h_src));
if ($w_src==$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time();
imagejpeg($dest, $path_to_90_directory.$date.".jpg"
$avatar = $path_to_90_directory.$date.".jpg";
$delfull = $path_to_90_directory.$filename;
unlink ($delfull);
}
else
{
exit ("<p><span>Ошибка!</span><br>Аватар должен быть в формате <strong>JPG</strong>,<strong>GIF</strong> или <strong>PNG</strong>
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
$avatar адреса загруженной авы
}
$password = md5($password);
$password = strrev($password);
$password = $password."b3p6f";
include ("blocks/bd.php"
$result = mysql_query("SELECT id FROM users WHERE login='$login'",$db);
$myrow = mysql_fetch_array($result);
if (!empty($myrow['id'])) {
exit ("<p><span>Ошибка!</span><br>Извините, введённый вами логин уже зарегистрирован. Введите другой логин.
<br><a href='reg.php'>Вернутся к Регистрации</a></p>"
}
$result2 = mysql_query ("INSERT INTO users (login,password,avatar,email,date) VALUES('$login','$password','$avatar','$email',NOW())"
if ($result2=='TRUE')
{
$result3 = mysql_query ("SELECT id FROM users WHERE login='$login'",$db);
$myrow3 = mysql_fetch_array($result3);
$activation = md5($myrow3['id']).md5($login);
$subject = "Подтверждение регистрации";
$message = "Здравствуйте! Спасибо за регистрацию на SITE.RU\nВаш логин: ".$login."\n
Перейдите по ссылке, чтобы активировать ваш аккаунт:\nhttp://localhost/site.ru/activation.php?login=".$login."&code=".$activation."\nС уважением,\n
Администрация Counter-Strike.UA";
mail($email, $subject, $message, "Content-type:text/plane; Charset=windows-1251\r\n"
echo "<p>Вам на E-mail выслано письмо с cсылкой, для подтверждения регистрации.
<br>Внимание!<br> Ссылка действительна 1 Час.<br> <a href='index.php'>Главная Страница<a></p>";
}
else {
exit ("Ошибка! Вы не зарегистрированы."
}
?>