Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.12.2012, 02:04
Новичок на форуме
Отправить личное сообщение для iBars Посмотреть профиль Найти все сообщения от iBars
 
Регистрация: 17.12.2012
Сообщений: 4

Не выводится результат MySQL (при использовании AJAX)
При обычной загрузке страницы всё нормально, но при использовании AJAX всё идёт наперекосяк.
Т.е. загружается исполняемый скрипт (index.php) - в нём всё нормально (по-умолчанию вставлен через include файл main.php). Но если подгрузить тот же main.php через AJAX, все результаты MySQL не показываются (будто запросы к БД не совершались). Данная проблема появляется при AJAX-подгрузке любого скрипта (например, faq.php).

Сам AJAX:

var default_content="";
 
$(document).ready(function(){
    
    checkURL();
    $('ul li a').click(function (e){
 
            checkURL(this.hash);
 
    });
    
    //filling in the default content
    default_content = $('#cab1net').html();
    
    
    setInterval("checkURL()",1000);
    
});
 
var lasturl="";
function checkURL(hash)
{
    if(!hash) hash=window.location.hash;
    
    if(hash != lasturl)
    {
        lasturl=hash;
        
        // FIX - if we've used the history buttons to return to the homepage,
        // fill the cab1net with the default_content
        
        if(hash=="")
        $('#cab1net').html(default_content);
        
        else
        loadPage(hash);
    }
}
 
function loadPage(url)
{
    url=url.replace('#page_','');
    
    $('#cabload').css('display','block');
    
    $.ajax({
        type: "POST",
        url: "../cabinet/load.php",
        data: 'page='+url,
        /*dataType: "html",*/
        success: function(msg){
            
            if(parseInt(msg)!=0)
            {
                $('#cabload').css('display','none');
                $('#cab1net').html(msg);
            }
        }
        
    });
 
}


Скрипт, к которому он обращается:

<?php
 
if(!$_POST['page']) die('<div class="notify_box notify notify_error">
<p><span>Ошибка</span> Страница не указана</p>
</div>
');
 
$page = $_POST['page'];
 
if(file_exists($page.'.php'))
include($page.'.php');
else echo '<div class="notify_box notify notify_error">
<p><span>Ошибка</span> Неверная страница</p>
</div>';
 
?>


Исполняемый (главный) скрипт:

<?php
 
define('cab1net', TRUE);
 
?>
<script type="text/javascript" src="/cabinet/img/script.js"></script>
<div class="cabmenu" align="center">
<ul class="cabmenu">
    <li><a>&nbsp;</a></li>
    <li><a href="#page_main">Основное</a></li>
    <li><a href="#page_faq">FAQ</a></li>
    <li><a>Платное</a>
        <ul>
            <li><a href="" style="color:orange;">Премиум</a></li>
            <li><a href="" style="color:yellow;">VIP</a></li>
            <li><a href="" style="color:lime;">Оружие</a></li>
            <li><a href="">HD скин / плащ</a></li>
            <li><a href="">Разбан</a></li>
        </ul>
    </li>
    <li><a>Магазин</a>
        <ul>
            <li><a href="">Обычные ресурсы</a></li>
            <li><a href="">Ресурсы из модов</a></li>
            <li><a href="" style="color:gray;">Нечестная цена?</a></li>
        </ul>
    </li>
    <li><a>Разное</a>
        <ul>
            <li><a href="" style="color:lime;">Привести друга</a></li>
            <li><a href="">Купить криптоны</a></li>
            <li><a href="">Передать деньги</a></li>
            <li><a href="">Бонусные коды</a></li>
            <li><a href="" style="color:orange;">Техподдержка</a></li>
        </ul>
    </li>
    <li><a style="color:gray;" title="Вы не администратор">Админка</a></li>
</ul>
</div>
<img id="cabload" src="/cabinet/img/loading.gif" alt="Загрузка..." title="Загрузка..." />
<?php
 
require 'config.php';
 
$dbConnect;
mysql_select_db($dbName);
$getecon = mysql_query("SELECT $econBalance FROM $econTable WHERE $econUsername='$player'");
$econ = mysql_result($getecon,0);
$getrub = mysql_query("SELECT balance FROM realmoney WHERE username='$player'");
$rub = mysql_result($getrub,0);
mysql_close($dbConnect);
 
echo '<div id="cab1net">';
include('main.php');
echo '</div>';
 
?>


То, что мы подгружаем:

<?php
 
define( 'cab1net', TRUE);
 
echo '<div class="skinbox">
<img src="/cabinet/skin2d.php" alt="Ваш скин" />
</div>
';
 
echo '<li><b>Никнейм:</b> '.$player.'</li>
';
echo '<li><b>Статус:</b> '.$group.'</li>
';
echo '<li><b>Баланс:</b> '.$econ.' криптонов</li>
';
echo '<li><b>Кошелёк:</b> '.$rub.' руб.
';
 
?>
Ответить с цитированием
  #2 (permalink)  
Старый 17.12.2012, 09:13
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

Сообщение от iBars
data: 'page='+url,
так зачем вы так отправляете запрос?так надо: { page: url }
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сохранить результат ajax в переменную Raz0r jQuery 3 14.08.2014 16:27
Почему MySQL экранирует обратный слеш при запросе? nip Серверные языки и технологии 2 02.11.2012 15:38
Почему результат Ajax запроса - Исходный код страницы pro_xaoc AJAX и COMET 4 23.11.2011 10:03
Работа со свойства, при использовании fn.extend в jQuery Greck jQuery 1 27.07.2011 21:28
Неверный результат в AJAX с получением HTML Raynor AJAX и COMET 3 17.12.2008 18:38