我正在尝试使用PHP函数来读取图像的服务器目录。然后需要使用.ajax()将图像传递回JQuery以用于幻灯片放映。我正在使用PHP函数,希望简化为我的用户添加/删除图像。基本上,他们所要做的就是在目录中添加或删除图像以修改幻灯片,而不是编辑任何代码。
我正在努力让JQuery函数返回我期待的内容。自从我完成PHP以来已经有一段时间了,所以我可能会忽视某人。这是我的PHP代码:
<?php
$path = "./";
while (false !== ($file = readdir($handle)))
{
if ($file != '.' && $file != '..')
echo "<img src=\"" . $path.$file. " alt=\"" . $file . "\>";
{
}
?>
这是我的readImages JQuery函数:
function readImages() {
$.ajax({
type: "POST",
url: "getimages.php",
dataType: "html",
success: function(imagepath){
$(".slideshow").html(imagepath);
}
});
}
我要做的是让PHP返回一个HTML格式的标签,并添加文件名。然后,JQuery将返回的标记添加到HTML代码中。
到目前为止......所有它的回归都是“; {}?&gt;
关于我做错了什么的想法?
答案 0 :(得分:3)
你的if()结构被破坏了。缺少一个开头和结尾的大括号。
答案 1 :(得分:0)
既然你说它正在归还......
“; {}?&gt;
我的第一个猜测是你在关闭PHP时出现语法错误。可能缺少引用?
其余部分看似正确。
答案 2 :(得分:0)
主要问题是Rob Olmos指出的结构是否破裂。但是如果你使用的是php 5,我也会切换到目录迭代器而不是readfile
。
<?php
$path = "./";
$dir = new DirectoryIterator(realpath($path));
$img = '<img src="%s" alt="%s" />';
foreach($dir as $file){
if(!$dir->isDot() && 0 !== strpos('.', $file->getFilename()) && !$file->isDir()){
$filepath = $path . $file->getFilename();
echo sprintf($img, $filepath, $filepath);
}
}
?>