Как успешно перезагрузить включенную страницу php? - PullRequest
1 голос
/ 29 ноября 2011

У меня есть страница php, на которой я хочу добавить другую страницу php, например:

<?php
    include ("wrapper.php");
?>

Она работает просто отлично, но когда я нажимаю на div, это вызывает функцию javascript, напримерthis:

function reloadNivoSlider () {
    $('#photo-show').fadeOut('slow', function () {
        $("#photo-show").load("nivo-slider/wrapper.php", function () {
            $('#photo-show').fadeIn('slow');
        })
    });
}

Div исчезает и возвращается обратно с загрузкой слайдера nivo навсегда.Я пытался удалить анимацию, но происходит то же самое.Может ли быть причиной проблемы MySQL-запрос, который я делаю в wrapper.php?Это останавливает страницу от перезагрузки?Я на самом деле не знаю, как работает $ (). Load, но я полагаю, что он перезагружает страницу, верно?

Файл wrapper.php:

<body>
<div id="wrapper">

    <div class="slider-wrapper theme-default">
        <div class="ribbon"></div>
        <div id="slider" class="nivoSlider">
            <?php
                mysql_connect(localhost,"root","");
                mysql_select_db("fotos") or die( "Unable to select database");

                $select = "SELECT * FROM 2a_mostra_kineret WHERE id='0';";
                $query = mysql_query($select);
                $row = mysql_fetch_assoc($query);

                $i = 0;

                while ($i <= 7) {
                    $verify = 1;
                    $random = rand(0,7);
                    // First Execution
                    if ($i == 0) {
                        $path[$i] = $row["path"] . $random . ".jpg";
                    }
                    // Other Executions
                    else {
                        while ($verify != 0) {
                            for ($s = 0; $s < $i; $s++) {
                                if ($row["path"] . $random . ".jpg" == $path[$s]) {
                                    $verify++;
                                    break;
                                }
                            }
                            if ($verify > 1) {
                                $random  = rand(0,7);
                                $verify = 1;
                            }
                            else $verify = 0;
                        }
                        $path[$i] = $row["path"] . $random . ".jpg";
                        //echo $random;
                    }
                    $i++;
                }

                for ($i = 0; $i <= 7; $i++) echo "<img src=\"$path[$i]\" alt=\"\" width=\"800\" height=\"600\"/>";

                mysql_close();
            ?>                              

        </div>
        <div id="htmlcaption" class="nivo-html-caption">
            <strong>This</strong> is an example of a <em>HTML</em> caption with <a href="#">a link</a>.
        </div>
    </div>

</div>
<script type="text/javascript" src="scripts/jquery-1.6.4.min.js"></script>
<script type="text/javascript" src="../jquery.nivo.slider.pack.js"></script>
<script type="text/javascript">
$(window).load(function() {
    $('#slider').nivoSlider();
});
</script>

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Нет, это невозможно, ajax - это путь. Проверить ссылки http://api.jquery.com/jQuery.get/ http://api.jquery.com/category/ajax/

0 голосов
/ 29 ноября 2011

Имейте в виду, что PHP выполняется на сервере.После отправки клиенту вы больше не можете использовать PHP.Если вы хотите, чтобы JavaScript «извлекал» новые данные с сервера, вам придется использовать AJAX.

...