Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 19
1

Не работает авторизация php, javascript. Что не так в коде?

03.11.2014, 21:27. Показов 1355. Ответов 6
Метки нет (Все метки)

Вот собственно код.
При нажатии заполнении логина и пароля и нажатии на ВХОД. Форма пропадает, но авторизация с текстом "Здраствуйте..." не появляется. В чем причина? Очень благодарен за помощь.
Регистрация проходит нормально - данные добавляются в базу.

yu.php
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?php
        include("functions/functions.php");
        include("include/db_connect.php");
        session_start();
        
?>
 
<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=windows-1251"/>
    
    <link href='http://fonts.googleapis.com/css?family=PhilosopherPT+Sans|Neucha|Marmelad|Forum|Poiret+One|Josefin+Sans|Dancing+Script|Cinzel|Open+Sans:400,300,600|Open+Sans+Condensed:300&subset=latin,cyrillic' rel='stylesheet' type='text/css'/>
    
    
    <link href="css/reset.css" rel="stylesheet" type="text/css"/>
    <link href="css/style.css" rel="stylesheet" type="text/css"/>
    <link rel="stylesheet" type="text/css" href="trackbar.css" />
    
    <script type="text/javascript" src="js/jquery-1.2.3.min.js"></script>
    <script type="text/javascript" src="js/u.js"></script>
  
<body>    
    
    
    
    <title>Интернет-магазин</title>
</head>
 
 
<div id="block-header">
 
        
                <!-- Вход и Регистрация -->
                
 
       
<?php
 
if ($_SESSION['auth'] == 'yes_auth')
{
 
 echo '<p id="auth-user-info" align="right"><img src="/images/user.png" />Здравствуйте, '.$_SESSION['auth_name'].'!</p>';   
    
}else{
 
  echo '<p id="reg-auth-title" align="right"><a class="top-auth">Вход</a><a href="registration.php">Регистрация</a></p>';   
    
}
    
?>
<div id="block-top-auth">
 
<form method="post">
 
<ul id="input-email-pass">
 
<h3>Вход</h3>
 
<p id="message-auth">Неверный Логин и(или) Пароль</p>
 
<li><input type="text" name="auth_login" id="auth_login"  placeholder="Логин или E-mail" required ></li>
<li><input type="password" name="auth_pass" id="auth_pass"  placeholder="Пароль" required >
<ul id="list-auth">
<li><input type="checkbox" name="rememberme" id="rememberme" /><label for="rememberme">Запомнить меня</label></li>
<li><a id="remindpass" href="#">Забыли пароль?</a></li>
</ul>
 
<input type="submit" id="button-auth" value="Вход">
<p align="right" class="auth-loading"><img src="/images/loading.gif" /></p>
 
</ul>
</form>
</div>  
 
</body>
</html>
auth.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
 
if($_SERVER["REQUEST_METHOD"] == "POST")
{
    
    include('db_connect.php');
    include('../functions/functions.php');
    
    $login = clear_string($_POST["login"]);
    
    $pass   = md5(clear_string($_POST["pass"]));
    $pass   = strrev($pass);
    $pass   = strtolower("9nm2rv8q".$pass."2yo6z");
    
 
    
    if ($_POST["rememberme"] == "yes")
    {
 
            setcookie('rememberme',$login.'+'.$pass,time()+3600*24*31, "/");
 
    }
    
       
   $result = mysql_query("SELECT * FROM reg_user WHERE (login = '$login' OR email = '$login') AND pass = '$pass'",$link);
If (mysql_num_rows($result) > 0)
{
    $row = mysql_fetch_array($result);
    session_start();
    $_SESSION['auth'] = 'yes_auth'; 
    $_SESSION['auth_pass'] = $row["pass"];
    $_SESSION['auth_login'] = $row["login"];
    $_SESSION['auth_surname'] = $row["surname"];
    $_SESSION['auth_name'] = $row["name"];
    $_SESSION['auth_patronymic'] = $row["patronymic"];
    $_SESSION['auth_address'] = $row["address"];
    $_SESSION['auth_phone'] = $row["phone"];
    $_SESSION['auth_email'] = $row["email"];
    echo 'yes_auth';
 
}else
{
    echo 'no_auth';
}  
} 
 
?>
functions.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
 
function clear_string($cl_str)
{
        
        $cl_str = strip_tags($cl_str);
        $cl_str = mysql_real_escape_string($cl_str);
        $cl_str = trim($cl_str);
        
        return $cl_str;
    
}
 
 
 
?>
db_connect.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
$db_host = 'localhost';
$db_user = 'admin';
$db_pass = 'adminadmin';
$db_database = 'db_shop';
 
$link = mysql_connect ($db_host,$db_user,$db_pass);
 
mysql_select_db ($db_database,$link) or die ("Нет соединения с БД".mysql_error());
mysql_query("SET names cp1251");
 
 
?>
u.js
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
$(document).ready(function() { 
  
  $('.top-auth').toggle(
       function() {
           $(".top-auth").attr("id","active-button");
           $("#block-top-auth").fadeIn(200);
       },
       function() {
           $(".top-auth").attr("id","");
           $("#block-top-auth").fadeOut(200);  
       }
    );
 
$("#button-auth").click(function() {
        
 var auth_login = $("#auth_login").val();
 var auth_pass = $("#auth_pass").val();
 
 
 if (auth_login == "" || auth_login.length > 30 )
 {
    $("#auth_login").css("borderColor","#FDB6B6");
    send_login = 'no';
 }else {
    
   $("#auth_login").css("borderColor","#DBDBDB");
   send_login = 'yes'; 
      }
 
 
if (auth_pass == "" || auth_pass.length > 15 )
 {
    $("#auth_pass").css("borderColor","#FDB6B6");
    send_pass = 'no';
 }else { $("#auth_pass").css("borderColor","#DBDBDB");  send_pass = 'yes'; }
 
 
 
 if ($("#rememberme").prop('checked'))
 {
    auth_rememberme = 'yes';
 
 }else { auth_rememberme = 'no'; }
 
 
 if ( send_login == 'yes' && send_pass == 'yes' )
 { 
  $("#button-auth").hide();
  $(".auth-loading").show();
    
    $.ajax({
  type: "POST",
  url: "/include/auth.php",
  data: "login="+auth_login+"&pass="+auth_pass+"&rememberme="+auth_rememberme,
  dataType: "html",
  cache: false,
  success: function(data) {
 
  if (data == 'yes_auth')
  {
      location.reload();
  }else
  {
      $("#message-auth").slideDown(400);
      $(".auth-loading").hide();
      $("#button-auth").show();
      
  }
  
}
});  
}
}); 
 
});
Добавлено через 1 минуту
Дамп БД
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
--
-- Структура таблицы `reg_user`
--
 
CREATE TABLE IF NOT EXISTS `reg_user` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `login` VARCHAR(50) NOT NULL,
  `pass` VARCHAR(50) NOT NULL,
  `surname` VARCHAR(50) NOT NULL,
  `name` VARCHAR(50) NOT NULL,
  `patronymic` VARCHAR(50) NOT NULL,
  `email` VARCHAR(50) NOT NULL,
  `phone` VARCHAR(50) NOT NULL,
  `address` text NOT NULL,
  `datetime` datetime NOT NULL,
  `ip` VARCHAR(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
 
--
-- Дамп данных таблицы `reg_user`
--
 
INSERT INTO `reg_user` (`id`, `login`, `pass`, `surname`, `name`, `patronymic`, `email`, `phone`, `address`, `datetime`, `ip`) VALUES
(1, 'luque', '9nm2rv8qda70c317d67c464fa004aa382da55d522yo6z', 'Kovskiy', 'Leonid', 'Vladimirovich', 'luque2012@gmail.com', '0955769864', 'Dnepropetrovsk', '2014-11-01 22:41:29', '127.0.0.1');
 
-- --------------------------------------------------------
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2014, 21:27
Ответы с готовыми решениями:

Что в коде ни так? while не работает так, как ожидаю
Написанный код, как я думаю, должен выдавать цифры от 0 до 1000, столбиком. Но выдает начиная от...

Что не так в php коде
$querymaxim = mysql_query(&quot;SELECT FROM `orders` WHERE `id` = '&quot;.$_GET.&quot;'&quot;); $ship =...

Не работает php-скрипт для выгрузки данных в XML-файл. Просьба глянуть что не так
Не работает php-скрипт для выгрузки данных в XML-файл. Просьба глянуть что не так. Вот скрипт: ...

Как вставить код php в коде javascript
Хочу воспользоваться этим кодом который нашел в инете и использовать его потому что он так думаю...

6
295 / 283 / 84
Регистрация: 10.05.2013
Сообщений: 920
03.11.2014, 23:21 2
Luque, когда "успешная" авторизация, у Вас перезагружается страница. Сделайте var_damp($_SESSION).
Результат напишите.
0
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 19
04.11.2014, 00:56  [ТС] 3
После вставки var_dump($_SESSION); Выдало в браузере array(0) { }

Добавлено через 4 минуты
Когда же вставляю сюда (показано в коде) - ничего не выводит

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        
                <!-- Вход и Регистрация -->
                
 
       
<?php
 
if ($_SESSION['auth'] == 'yes_auth')
{
 
 echo '<p id="auth-user-info" align="right"><img src="/images/user.png" />Здравствуйте, '.$_SESSION['auth_name'].'!
</p>';   
    var_dump($_SESSION);
}else{
 
  echo '<p id="reg-auth-title" align="right"><a class="top-auth">Вход</a><a href="registration.php">Регистрация</a></p>';   
    
}
0
295 / 283 / 84
Регистрация: 10.05.2013
Сообщений: 920
04.11.2014, 13:03 4
Luque, после кода (см ниже) вставь var_dump($_SESSION);. В JS временно сделай, что бы результат ajax запроса распечатался на страницу... В результате будем знать, сохраняются или не сохраняются в сессию данные...
PHP
1
2
3
4
5
6
7
8
9
10
$_SESSION['auth'] = 'yes_auth';
    $_SESSION['auth_pass'] = $row["pass"];
    $_SESSION['auth_login'] = $row["login"];
    $_SESSION['auth_surname'] = $row["surname"];
    $_SESSION['auth_name'] = $row["name"];
    $_SESSION['auth_patronymic'] = $row["patronymic"];
    $_SESSION['auth_address'] = $row["address"];
    $_SESSION['auth_phone'] = $row["phone"];
    $_SESSION['auth_email'] = $row["email"];
    echo 'yes_auth';
0
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 19
04.11.2014, 22:22  [ТС] 5
А можешь сбросить ссылку (как это правильно сделать) или показать как вывести результат ajax запроса на страницу. Заранее спасибо
0
295 / 283 / 84
Регистрация: 10.05.2013
Сообщений: 920
05.11.2014, 02:07 6
Luque, ниже echo 'yes_auth'; написать нужно var_dump($_SESSION);
Это комментируется:
Javascript
1
2
3
4
5
6
7
8
9
10
if (data == 'yes_auth')
  {
      location.reload();
  }else
  {
      $("#message-auth").slideDown(400);
      $(".auth-loading").hide();
      $("#button-auth").show();
      
  }
Ниже или выше, написать document.write(data);
0
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 19
05.11.2014, 19:22  [ТС] 7
После данных преобразований происходит все то же самое:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
   $row = mysql_fetch_array($result);
    session_start();
    $_SESSION['auth'] = 'yes_auth'; 
    $_SESSION['auth_pass'] = $row["pass"];
    $_SESSION['auth_login'] = $row["login"];
    $_SESSION['auth_surname'] = $row["surname"];
    $_SESSION['auth_name'] = $row["name"];
    $_SESSION['auth_patronymic'] = $row["patronymic"];
    $_SESSION['auth_address'] = $row["address"];
    $_SESSION['auth_phone'] = $row["phone"];
    $_SESSION['auth_email'] = $row["email"];
    echo 'yes_auth';
    var_dump($_SESSION);

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 $.ajax({
  type: "POST",
  url: "/include/auth.php",
  data: "login="+auth_login+"&pass="+auth_pass+"&rememberme="+auth_rememberme,
  dataType: "text",
  cache: false,
  success: function(data)
   
   {
document.write(data);
  //if (data == 'yes_auth')
  //{
  //  location.reload();
  //}else
 
  //{
  //  $("#message-auth").slideDown(400);
  //  $(".auth-loading").hide();
  //  $("#button-auth").show();
      
 // }
  
}
 
});
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2014, 19:22

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Не работает JavaScript в коде
Собственно не выполняется данный код, при нажатии на кнопку переходит на новую страницу, функция...

Не проходит авторизация, подскажите что не так?
Создан модуль регистрации и авторизации для сайта. Регистрация проходит нормально, но при входе под...

Не работает авторизация PHP
Здравствуйте. Буквально вчера этот скрипт еще работал а сегодня захожу всё как обычно, ввожу логин...

Что с оператором if else на jQuery? Что не так в коде?
В общем уже не первый раз сталкиваюсь с такой проблемой: мне необходимо задать определенные условия...

Странно работает авторизация на PHP
Здравствуйте! У меня есть скрипт авторизации, основанный на COOKIE: &lt;form id=&quot;sign_in&quot;...

Авторизация не работает, login.php
Решил я написать самодельный файловый хостинг,где у людей будет свой личный кабинет (после...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.