Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX] problem z wczytaniem skryptu PHP
Forum PHP.pl > Forum > XML, AJAX > AJAX
youji
korzystam z takiego skryptu (ale próbowałem też kilka innych i dokładnie efekt ten sam):

Kod
function ajaxLoader(url,id)
    {
        if (document.getElementById) {
            var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
            }
            if (x)
                {
            x.onreadystatechange = function()
                    {
                if (x.readyState == 4 && x.status == 200)
                        {
                        el = document.getElementById(id);
                        el.innerHTML = x.responseText;
                    }
                    }
                x.open("GET", url, true);
                x.send(null);
                }
        }


za jego pomocą próbuję załadować stronę o takie treści:
Kod
<div>

<?php
    include 'admin/baza.php';
    
    $ile = $_GET["nr"];
    if(!isset($ile))
    {
        $ile = 0;
        $adres = $_SERVER['REQUEST_URI'];
    }
    else
    {
        $pos = strrpos($_SERVER['REQUEST_URI'], '&');
        $adres = substr($_SERVER['REQUEST_URI'], 0, $pos);
    }
        
    $polacz = mysql_connect($dbhost, $dbuser, $dbpass) or die('Nie udało się połączyć z serwerem MySQL :(');
    $db = mysql_select_db($dbname) or die('Nie udało się połączyć z bazą :(');
        
    $pobierz = "SELECT * FROM obrazki";
    $wynik = mysql_query($pobierz);
    $suma = mysql_num_rows($wynik);
    
    $pobierz = "SELECT * FROM obrazki ORDER BY id LIMIT $ile, 9";
    $wynik = mysql_query($pobierz);
    
    $ilosc = ceil($suma / 9);
        
    if(!$wynik)
    {
        echo "<p>Coś się zwaliło</p>";
    }
    else
    {
            
    while($dane = mysql_fetch_array($wynik)){
        echo '<a class="pics" href="#nogo"><img class="thumb" src="grafika/collection/';
        echo $dane[1];
        echo '_m.jpg" alt="" />';
        echo '<span><img src="grafika/collection/';
        echo $dane[1];
        echo '.jpg" /></span></a>';
        echo "\n";
    }
    }
    
    mysql_close($polacz);

?>

<?php if($ilosc > 1){ ?>
<div>
<
<?php    for($i = 0; $i < $ilosc; $i++){        ?>
        <a href="<?php echo $adres; ?>&nr=<?php echo 9*$i; ?>"><?php echo $i+1; ?></a>
<?php    }    ?>
>
</div>
<?php
}
?>
    
</div>


a efekt jest taki:
Cytat
Coś się zwaliło"; } else { while($dane = mysql_fetch_array($wynik)){ echo ''; echo ''; echo "\n"; } } mysql_close($polacz); ?> 1){ ?>
< >


ta sama strona wczytywana przez php działa bezbłędnie; byłbym bardzo wdzięczny za pomoc w znalezieniu błędu, bądź chociaż nakierowanie, co może być nie tak
aha, jeszcze mały dodatek: po usunięciu tagów <p></p> z "Coś się zwaliło", wyskakuje coś takiego:

Cytat
'; echo ''; echo "\n"; } } mysql_close($polacz); ?> 1){ ?>
< >
croc
Na moje oko to kod był pisany w Wordzie i masz popsute coś z cudzysłowami. Przejedź wszystkie cudzysłowy w jakimś edytorze tekstu (ale nie Wordzie, WordPadzie itd.) i pozamieniaj je na zwykłe cudzysłowy.
youji
kod pisany w eclipsie; ale cudzysłowy wszystkie pozamieniałem; efekt jednak mizerny

kod wygląda teraz tak:
Kod
<div>

<?php
    include "admin/baza.php";
    
    $ile = $_GET["nr"];
    if(!isset($ile))
    {
        $ile = 0;
        $adres = $_SERVER["REQUEST_URI"];
    }
    else
    {
        $pos = strrpos($_SERVER["REQUEST_URI"], "&");
        $adres = substr($_SERVER["REQUEST_URI"], 0, $pos);
    }
        
    $polacz = mysql_connect($dbhost, $dbuser, $dbpass) or die("Nie udało się połączyć z serwerem MySQL");
    $db = mysql_select_db($dbname) or die("Nie udało się połączyć z bazą");
        
    $pobierz = "SELECT * FROM obrazki";
    $wynik = mysql_query($pobierz);
    $suma = mysql_num_rows($wynik);
    
    $pobierz = "SELECT * FROM obrazki ORDER BY id LIMIT $ile, 9";
    $wynik = mysql_query($pobierz);
    
    $ilosc = ceil($suma / 9);
        
    if(!$wynik)
    {
        echo "<p>Coś się zwaliło</p>";
    }
    else
    {
            
    while($dane = mysql_fetch_array($wynik)){
        echo "<a class=\"pics\" href=\"#nogo\"><img class=\"thumb\" src=\"grafika/collection/";
        echo $dane[1];
        echo "_m.jpg\" alt=\"\" />";
        echo "<span><img src=\"grafika/collection/";
        echo $dane[1];
        echo ".jpg\" /></span></a>";
        echo "\n";
    }
    }
    
    mysql_close($polacz);

?>

<?php if($ilosc > 1){ ?>
<div>
<
<?php    for($i = 0; $i < $ilosc; $i++){        ?>
        <a href="<?php echo $adres; ?>&nr=<?php echo 9*$i; ?>"><?php echo $i+1; ?></a>
<?php    }    ?>
>
</div>
<?php
}
?>
    
</div>


a efekt jest taki:
Cytat
Coś się zwaliło"; } else { while($dane = mysql_fetch_array($wynik)){ echo "\"\""; echo ""; echo "\n"; } } mysql_close($polacz); ?> 1){ ?>
< >

przy czym fragment
Cytat
\"\""; echo "
jest linkiem do
Cytat
\"#nogo\"


po usunięciu <p></p> wokół Coś się zwaliło zostaje coś takiego:
Cytat
\"\""; echo ""; echo "\n"; } } mysql_close($polacz); ?> 1){ ?>
< >

bez żadnego linka

i ponownie: ta sama strona wywoływana przez php działa bezbłędnie
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.