Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.04.2011, 13:47
Аватар для zercs
Интересующийся
Отправить личное сообщение для zercs Посмотреть профиль Найти все сообщения от zercs
 
Регистрация: 01.02.2011
Сообщений: 19

проблемка с объектом, POST запрос Ajax
Привет всем! Изучаю jQuery. Написал объект LOGIN, в методе load() есть ajax-запрос (post). Дело в том, что страница обновляется, как будто запрос синхронный. Сервер ничего не возвращает. Подскажите, пожалуйста, в чем суть проблемы. Спасибо

Замечания:
1. Код на сервере верный, проверял низкоуровневыми запросами.
2. Firebug показывает, что данные из js скрипта отправляются корректно, но ответа от сервера нет.

var LOGIN = {
        running: false,
        container: "#log_comments",
        container2: "#center_right",
        url: "scripts/log_add.php",
        delay: 1000,
        attempts: 3,
        reset: function() {
            this.delay = 1000;
            this.attempts = 3;
        },
        load: function() {
           //снижаем нагрузку
           if(this.running == true) {
               return;
           }
           this.running = true;

           var _login = this;

            $.ajaxSetup({
                timeout: 15000
            });
            //запрос
            $.ajax({
                type: "POST",
                url: this.url,
                data: $("#login_form").serialize(),
                //прелоадер
                beforeSend: function() {
                $(_login.container).show().html("<img src='images/preloader.gif' alt=''>");
                },
                //ошибка
                error: function(xhr,status) {
                    if(_login.attempts-- == 0) {
                        _login.reset();
                        return;
                    }
                    setTimeout(function() {_login.load();}, _login.delay *= 2);
                },
                //успех
                success:  function(show_data) {
                    _login.display(show_data);
                },
                //завершение
                complete: function() {
                    _login.running = false;
                }
            });
        },
        //отображение
        display : function(show_data) {
           var log_div = $("#log_comments");
           var menu = this.container2;
           log_div.hide();

            if (show_data == 1) {
                log_div.html("<font color='#e80707' style='background-color: #FFE4E1;\
                font-size: 12px; border: 1px dashed #e80707;'>\
                &nbsp;Неправильный логин/пароль&nbsp;</font>").fadeIn('normal');
                 setTimeout(function() {log_div.fadeOut('normal')},4000);
                }
        }
    };
Ответить с цитированием
  #2 (permalink)  
Старый 24.04.2011, 18:06
Аватар для zercs
Интересующийся
Отправить личное сообщение для zercs Посмотреть профиль Найти все сообщения от zercs
 
Регистрация: 01.02.2011
Сообщений: 19

Ап теме, проблемку до сих пор не решил..

На всякий случай код сервера:

<?php
session_start();
require_once 'config.php';        // коннект
$link = @mysql_connect($config['mysql_host'].":".$config['mysql_port'], $config['mysql_login'], $config['mysql_password']) or die ($server['errorText']);
@mysql_select_db($config['mysql_db'], $link) or die ('Найти базу с таким именем не удалось!');
error_reporting(0);
Header("Content-Type: text/javascript; charset=windows-1251");
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");

$login_temp = mysql_real_escape_string($_POST['log_login']);    //преобразование данных
$login = htmlspecialchars($login_temp,ENT_QUOTES);
$pass_temp = mysql_real_escape_string($_POST['log_pass']);
$pass = htmlspecialchars($pass_temp,ENT_QUOTES);
$pass_code = base64_encode($pass);

$account = mysql_query("SELECT * FROM `users` WHERE `Username` = '$login' ",$link); //непосредственно логин
$row = mysql_fetch_array($account);

if($row && $row['Password'] == $pass_code && $row['Username'] == $login && ereg("^([a-zA-Z0-9_-])*$",$login)) {
  $_SESSION['lettbox_log'] = $login;
  echo $login.":".$row['Sent_messages'].":".$row['Received_messages'].":".$row['Points'];
  mysql_close($link);
  exit();
  }
  else {
  	echo "1"; mysql_close($link); exit();
  	}
?>

Последний раз редактировалось zercs, 24.04.2011 в 20:14.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax запрос. Возврат массива. Rinas jQuery 5 09.04.2011 17:58
POST запрос воспринимается как OPTIONS neshta AJAX и COMET 0 29.03.2011 22:34
jQuery Ajax Rater Plugin и массив POST - Нужна помощь TROODON jQuery 12 30.12.2009 21:44
Как в ajax запросе передать файл методом POST mcpro jQuery 1 16.12.2009 10:41
ajax запрос с подгружемным js HelpeR AJAX и COMET 1 27.10.2008 11:44