Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/14: Рейтинг темы: голосов - 14, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 11

Авторизация через PHP и jQuery форму

25.12.2011, 06:54. Показов 2714. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем такая проблема. Есть форма авторизации реализована на jQuery (форма взята из инета). Авторизация работает на PHP. PHP код проверил, всё работает с обычной формой. Проблема в том, что через форму jQuery не выполняется "Submit". Попробовал несколько форм и везде одно и тоже. Обращался в ветку 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
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<?php
  # Функция для генерации случайной строки
  function generateCode($length=6) {
    $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPRQSTUVWXYZ0123456789";
    $code = "";
    $clen = strlen($chars) - 1;  
    while (strlen($code) < $length) {
        $code .= $chars[mt_rand(0,$clen)];  
    }
    return $code;
  }
 
  # Если есть куки с ошибкой то выводим их в переменную и удаляем куки
  if (isset($_COOKIE['errors'])){
      $errors = $_COOKIE['errors'];
      setcookie('errors', '', time() - 60*24*30*12, '/');
  }
 
  # Подключаем конфиг
  include 'config.php';
 
  if(isset($_POST['submit']))
  {
   
    # Вытаскиваем из БД запись, у которой логин равняеться введенному
    $data = mysql_fetch_assoc(mysql_query("SELECT users_id, users_password FROM `users` WHERE `users_login`='".mysql_real_escape_string($_POST['login'])."' LIMIT 1"));
     
    # Соавниваем пароли
    if($data['users_password'] === md5(md5($_POST['password'])))
    {
      # Генерируем случайное число и шифруем его
      $hash = md5(generateCode(10));
           
      # Записываем в БД новый хеш авторизации и IP
      mysql_query("UPDATE users SET users_hash='".$hash."' WHERE users_id='".$data['users_id']."'") or die("MySQL Error: " . mysql_error());
       
      # Ставим куки
      setcookie("id", $data['users_id'], time()+60*60*24*30);
      setcookie("hash", $hash, time()+60*60*24*30);
       
      # Переадресовываем браузер на страницу проверки нашего скрипта
      header("Location: index.php"); exit();
    }
    else
    {
      print "Вы ввели неправильный логин/пароль<br>";
    }
  }
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Carbon Fiber Signup Form | Tutorialzine Demo</title>
 
<link rel="stylesheet" type="text/css" href="styles.css" />
 
</head>
 
<body>
 
<div id="carbonForm">
        <h1>Signup</h1>
 
    <form  method="post" id="signupForm">
 
    <div class="fieldContainer">
 
        <div class="formRow">
            <div class="label">
                <label for="name">Name:</label>
            </div>
            
            <div class="field">
                <input type="text" name="login" id="name" />
            </div>
        </div>
        
 
        
        <div class="formRow">
            <div class="label">
                <label for="pass">Password:</label>
            </div>
            
            <div class="field">
                <input type="password" name="password" id="pass" />
            </div>
        </div>
        
        
    </div> <!-- Closing fieldContainer -->
    
    <div class="signupButton">
        <input type="submit" name="submit" id="submit" value="Signup" />
    </div>
    
    </form>
        
</div>
 
 
 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
 
</body>
</html>

и javascript

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
$(document).ready(function(){
        // $(document).ready() is executed after the page DOM id loaded
        
        
        // Binding an listener to the submit event on the form:
        $('#signupForm').submit(function(e){
 
                // If a previous submit is in progress:
                if($('#submit').hasClass('active')) return false;
                
                // Adding the active class to the button. Will show the preloader gif:
                $('#submit').addClass('active');
                
                // Removing the current error tooltips
                $('.errorTip').remove();
                
                // Issuing a POST ajax request to submit.php (the action attribute of the form):
                $.post($('#signupForm').attr('action'),$('#signupForm').serialize()+'&fromAjax=1',function(response){
                        
                        if(!response.status)
                        {
                                // Some kind of input error occured
                                
                                // Looping through all the input text boxes,
                                // and checking whether they produced an error
                                $('input[type!=submit]').each(function(){
                                        var elem = $(this);
                                        var id = elem.attr('id');
                                        
                                        if(response[id])
                                                showTooltip(elem,response[id]);
                                });
                        }
                        else location.replace(response.redirectURL);
                        
                        $('#submit').removeClass('active');
                },'json');
                
                e.preventDefault();
        });
        
        $(window).resize();
});
 
// Centering the form vertically on every window resize:
$(window).resize(function(){
        var cf = $('#carbonForm');
        
        $('#carbonForm').css('margin-top',($(window).height()-cf.outerHeight())/2)
});
 
// Helper function that creates an error tooltip:
function showTooltip(elem,txt)
{
        // elem is the text box, txt is the error text
        $('<div class="errorTip">').html(txt).appendTo(elem.closest('.formRow'));
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.12.2011, 06:54
Ответы с готовыми решениями:

Php через jquery
Как реализовать передачу формы и занесеня данных в БД через jquery ,без перезагрузки страницы? У меня есть форма она передает зачение 1 или...

Вытащить из php данные через jQuery
Добрый день. Столкнулся с такой задачей: На сайте есть форма для оставления комментариев и эти же комментарии нужно выводить...

Связка jquery и php через JSON
Здравствуйте, javascript отправляет запрос в settings.php, в котором находится много скриптов. Для того чтобы вызвать php функцию,...

1
0 / 0 / 0
Регистрация: 10.05.2009
Сообщений: 5
25.01.2013, 21:54
а почему у тебя в 29 строке два раза берется функция md5
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.01.2013, 21:54
Помогаю со студенческими работами здесь

Выполнение php-кода через ajax jQuery сразу при загрузке страницы.
Все доброго времени суток, с JS вообще не знаком, только поверхностно, сразу обязан предупредить подобные темы искал, но так и не нашел,...

Как к странице на PHP добавить через кнопку(переключатель) таблицу Jquery и возможность редактирования
К созданной странице на PHP, где уже есть таблица надо ёё переделать чтобы она была динамическая с функциями редактирования, но сперва, не...

Как добавить новое поле в форму через js/php?
Есть html форма с одним лишь полем ввода номера телефона, я хочу добавить туда еще и поле для ввода имени, но не могу разобраться как это...

Авторизация Ajax, jQuery
Делаю авторизацию на сайте с использованием технологии - Ajax. ( еще новичок ). Такой вопрос. Имеется файл index.php. в ней форма...

Авторизация через PHP и jQuery
Есть форма авторизации на PHP и MySQL. Всё работает отлично. Но я решил приукрасить форму через jQuery. Нашел готовый пример подогнал его...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru