我有一个php页面,其中我想要包含另一个php页面,如下所示:
<?php
include ("wrapper.php");
?>
它工作正常,但是当我点击一个div时,会触发这样的javascript函数:
function reloadNivoSlider () {
$('#photo-show').fadeOut('slow', function () {
$("#photo-show").load("nivo-slider/wrapper.php", function () {
$('#photo-show').fadeIn('slow');
})
});
}
div淡出并淡入,并且nivo滑块永远加载。我试图删除动画,但同样的情况发生。我在wrapper.php中执行的MySQL请求可能是问题的原因吗?是否会阻止页面重新加载?我实际上不知道$()。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>
答案 0 :(得分:1)
不可能,ajax就是这样。检查链接http://api.jquery.com/jQuery.get/ http://api.jquery.com/category/ajax/
答案 1 :(得分:0)
请记住,PHP是在服务器上执行的。一旦将其发送到客户端,您就不能再使用任何PHP。如果您希望JavaScript从服务器“获取”新数据,则必须使用AJAX。