Помощь по скриптам | проблеми с регой
при регистрации с мобили перекидивает на главную как исправить
вот сам сайт http://gofriends.tk
вот сам сайт http://gofriends.tk
DELETED
26 февраля 2016, в 17:34
Delete
Варианты:
-В коде ошибка
-Куки не правильно записываются
-Бд не прописана
-Не правильный запрос в бд
KingsAnt , [q]<?php
/*
Appointment: Завершение регистрации
File: register.php
*/
if(!defined('MOZG'))
die('Hacking attempt!');
//Проверяем была ли нажата кнопка, если нет, то делаем редирект на главную
if(!$logged){
$act = $_GET['act'];
switch($act){
//################### Отправка письма на почту ###################//
case "step3":
NoAjaxQuery();
//Код безопасности
$session_sec_code = $_SESSION['sec_code'];
$sec_code = $_POST['sec_code'];
if($sec_code == $session_sec_code){
//POST данные
$user_email = textFilter($_POST['email'], false, true);
//Проверка E-mail
if(preg_match('/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i', $user_email)) $ok_email = true;
else $ok_email = false;
if($ok_email){
//Проверка на блок email сервиса
$exp_user_email = explode('@', $user_email);
$bad_server = explode(', ', $config['bad_email']);
if($config['bad_email']){
foreach($bad_server as $serv){
if($exp_user_email[1] == $serv) $bad = true;
}
}
if($bad){
echo '4';
exit;
}
$check_email = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_users` WHERE user_email = '{$user_email}'");
if(!$check_email['cnt']){
//Удаляем все предыдущие запросы на регистрацию этого email
$db->query("DELETE FROM `".PREFIX."_restore` WHERE email = '{$user_email}'");
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
for($i = 0; $i < 15; $i++){
$rand_lost .= $salt{rand(0, 33)};
}
$hash = md5($server_time.$user_email.rand(0, 100000).$rand_lost.$check['user_name']);
//Вставляем в базу
$db->query("INSERT INTO `".PREFIX."_restore` SET email = '{$user_email}', hash = '{$hash}', ip = '{$_IP}'");
//Отправляем письмо на почту для воостановления
$message = mail($user_email, "Добро пожаловать на {$_SERVER['HTTP_HOST']}", "Здравствуйте, {$user_name}!\nРады Вас видеть на {$_SERVER['HTTP_HOST']}.\n\n Для активации аккаунта перейдите по ссылке {$config['home_url']}index.php?go=register&act=activate&hash={$hash} \n\n\nС уважением, Администрация {$_SERVER['HTTP_HOST']}", "From: admin@{$_SERVER['HTTP_HOST']}");
if($exp_user_email[1] == 'mail.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'gmail.com')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'yandex.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'rambler.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
} else
echo '3';
} else
echo '2';
} else
echo '1';
exit;
break;
//################### Страница ввода e-mail ###################//
case "step2":
NoAjaxQuery();
$tpl->load_template('register/step2.tpl');
$tpl->set('{rndval}', $server_time);
$tpl->compile('content');
AjaxTpl();
exit;
break;
//################### Страница заверщения регистрации ###################//
case "activate":
$hash = $db->safesql(strip_data($_GET['hash']));
$row = $db->super_query("SELECT email FROM `".PREFIX."_restore` WHERE hash = '{$hash}' AND ip = '{$_IP}'");
if($row){
$tpl->load_template('register/step3.tpl');
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
for($i = 0; $i < 15; $i++){
$rand_lost .= $salt{rand(0, 33)};
}
$newhash = md5($server_time.$row['email'].rand(0, 100000).$rand_lost);
$tpl->set('{hash}', $newhash);
$db->query("UPDATE `".PREFIX."_restore` SET hash = '{$newhash}' WHERE email = '{$row['email']}'");
$tpl->compile('content')
/*
Appointment: Завершение регистрации
File: register.php
*/
if(!defined('MOZG'))
die('Hacking attempt!');
//Проверяем была ли нажата кнопка, если нет, то делаем редирект на главную
if(!$logged){
$act = $_GET['act'];
switch($act){
//################### Отправка письма на почту ###################//
case "step3":
NoAjaxQuery();
//Код безопасности
$session_sec_code = $_SESSION['sec_code'];
$sec_code = $_POST['sec_code'];
if($sec_code == $session_sec_code){
//POST данные
$user_email = textFilter($_POST['email'], false, true);
//Проверка E-mail
if(preg_match('/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i', $user_email)) $ok_email = true;
else $ok_email = false;
if($ok_email){
//Проверка на блок email сервиса
$exp_user_email = explode('@', $user_email);
$bad_server = explode(', ', $config['bad_email']);
if($config['bad_email']){
foreach($bad_server as $serv){
if($exp_user_email[1] == $serv) $bad = true;
}
}
if($bad){
echo '4';
exit;
}
$check_email = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_users` WHERE user_email = '{$user_email}'");
if(!$check_email['cnt']){
//Удаляем все предыдущие запросы на регистрацию этого email
$db->query("DELETE FROM `".PREFIX."_restore` WHERE email = '{$user_email}'");
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
for($i = 0; $i < 15; $i++){
$rand_lost .= $salt{rand(0, 33)};
}
$hash = md5($server_time.$user_email.rand(0, 100000).$rand_lost.$check['user_name']);
//Вставляем в базу
$db->query("INSERT INTO `".PREFIX."_restore` SET email = '{$user_email}', hash = '{$hash}', ip = '{$_IP}'");
//Отправляем письмо на почту для воостановления
$message = mail($user_email, "Добро пожаловать на {$_SERVER['HTTP_HOST']}", "Здравствуйте, {$user_name}!\nРады Вас видеть на {$_SERVER['HTTP_HOST']}.\n\n Для активации аккаунта перейдите по ссылке {$config['home_url']}index.php?go=register&act=activate&hash={$hash} \n\n\nС уважением, Администрация {$_SERVER['HTTP_HOST']}", "From: admin@{$_SERVER['HTTP_HOST']}");
if($exp_user_email[1] == 'mail.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'gmail.com')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'yandex.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
elseif($exp_user_email[1] == 'rambler.ru')
echo "{$config['home_url']}index.php?go=register&act=activate&hash={$hash}";
} else
echo '3';
} else
echo '2';
} else
echo '1';
exit;
break;
//################### Страница ввода e-mail ###################//
case "step2":
NoAjaxQuery();
$tpl->load_template('register/step2.tpl');
$tpl->set('{rndval}', $server_time);
$tpl->compile('content');
AjaxTpl();
exit;
break;
//################### Страница заверщения регистрации ###################//
case "activate":
$hash = $db->safesql(strip_data($_GET['hash']));
$row = $db->super_query("SELECT email FROM `".PREFIX."_restore` WHERE hash = '{$hash}' AND ip = '{$_IP}'");
if($row){
$tpl->load_template('register/step3.tpl');
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
for($i = 0; $i < 15; $i++){
$rand_lost .= $salt{rand(0, 33)};
}
$newhash = md5($server_time.$row['email'].rand(0, 100000).$rand_lost);
$tpl->set('{hash}', $newhash);
$db->query("UPDATE `".PREFIX."_restore` SET hash = '{$newhash}' WHERE email = '{$row['email']}'");
$tpl->compile('content')