Friends tell me if I wrote the code correctly, authorization. Ajax data processing handler:
if ($_GET['action'] == 'getLogin') { $user = addslashes(htmlspecialchars($_POST["user"], ENT_QUOTES, '')); $pass = $_POST['pass']; $get_pass = mysql_query("SELECT id, login, pass, status, active FROM users WHERE login = '".$user."' LIMIT 1"); $row = mysql_fetch_array($get_pass); $id = $row['id']; $login = $row['login']; $user_password = $row['pass']; $status = $row['status']; $mail_conf = $row['active']; if(as_md5($key, $pass) != $user_password || !$login) { $login = ''; print 'Данные введены неверно'; } elseif($mail_conf == 1) { print 'Ваш E-mail не подтвержден'; } elseif($status == 3) { print 'Ваш счет временно заблокирован. Обратитесь в службу поддержки '; } elseif($status == 4) { print 'Вам запрещено больше принимать участие в проекте'; exit(); } else { session_start(); $_SESSION['login'] = $user; $ip = getip(); $time = time(); mysql_query("UPDATE users SET ip = '".$ip."', go_time = ".$time." WHERE login = '".$login."' LIMIT 1"); mysql_query("INSERT INTO logip (user_id, ip, date) VALUES (".$id.", '".$ip."', ".$time.")"); print "Переходим в кабинет..."; print "<script language=\"javascript\">setTimeout(function(){top.location.href=\"/myprofile/\";}, 1500); </script>"; } } Ajax processing:
$(document).ready(function(){ $('#LoginForm').submit(function(){ $('#loading-formLogin').css('visibility','visible'); var data = { user: $('#user').val(), pass: $('#pass').val() } setTimeout(function(){ $.ajax({ type: "POST", url: "/log-form.php?action=getLogin", data: data, success: function(html){ $('#loading-formLogin').css('visibility','hidden'); $('#LoginResult').fadeIn(200).css('display','block'); setTimeout(function(){ $('#LoginResult').fadeOut(1000).css('display','block'); }, 1500); $('#LoginResult').html(html).css('display','block'); } }); }, 1000); return false; }); }); Everything is working fine for me. If something is wrong in the code, please indicate errors) I would be very grateful!