嘿,我的第一篇:d动态图片库
问题:
我试图做一个模板库,而不是一个幻灯片,我可以很容易地在多个网站上重复。
主要用于快速对折站点,其中所有者不知道如何更新代码以添加图片。
它需要读取所选目录中的所有图像文件。 (jpg,gif,png,bmp) 它需要能够在不更改任何代码的情况下更新内容。 (来自文件夹的动态加载) 它需要将img标签写出到查看的页面。 (使用JavaScript进行自定义/ css?)
从php/JavaScript输出的img标记集合需要是缩略图,点击时会链接到完整的图片,这可能在制作链接时可以用JavaScript处理原来。
进展:
我发现了一个PHP脚本,将读取一个文件夹中的文件和网址保存到在JavaScript中使用的数组。 但是,用于显示图片的代码是以单块幻灯片放映的形式完成的,因为我需要将所有图片单独发布,而不仅仅是替换同一图片的src。
实施例:
根/ index.htm的 - 引擎收录COM/m52568ed5
根/图像/ getimages.php - 引擎收录COM/f5395a572
根/图像/ PIC01 [] []。 PNG
根/图像/ pic03.jpg
根/图像/ asdfs.gif
那么,如何通过galleryarray [curimg]获取JavaScript中循环,并写出我的链接?
我得到了这个,并卡住了。
function rotateimages(){
// document.getElementById("slideshow").setAttribute("src", "res/gallery/painting/"+galleryarray[curimg])
// curimg=(curimg<galleryarray.length-1)? curimg+1 : 0
for (curimg=1;curimg!=0;curimg++;) {
document.write("<div><img class='gallery' src='" + galleryarray[curimg] + "' /></div>")
}
}
在此先感谢Braden。
编辑: 我的继承人沙盘显示怎么回事
- 编辑:删除链接
无论我如何改变每个项目的输出,例如,如果我更换整个部分用一个简单的回声我得到的是以下内容:
<!DOCTYPE html>
<html>
<head>
<title>My Gallery</title>
</head>
<body>
<div id="gallery"></div>
</body>
</html>
好像它时,它试图运行“的foreach()”
继承人的当前的PHP卡:
<?php
function getDirTree($dir,$p=true) {
$d = dir($dir);$x=array();
while (false !== ($r = $d->read())) {
if($r!="."&&$r!=".."&&(($p==false&&is_dir($dir.$r))||$p==true)) {
$x[$r] = (is_dir($dir.$r)?array():(is_file($dir.$r)?true:false));
}
}
foreach ($x as $key => $value) {
if (is_dir($dir.$key."/")) {
$x[$key] = getDirTree($dir.$key."/",$p);
}
}
ksort($x);
return $x;
}
$tree = getDirTree("./res/gallery/");
echo '<div id="gallery">';
foreach($tree as $element => $eval) {
if (is_array($eval)) {
foreach($eval as $file => $value) {
if (strstr($file, "jpg")) {
$file = 'res/gallery/'.$element.'/'.$file;
echo 'test'; //test//echo '<a href="'.$file.'">test</a>'; //test// <img class="gallery" src="'.$file.'" alt="'.$file.'"/></a>';
}
}
}
}
echo '</div>';
考虑,因为我从来没有做过的PHP我开始之前,我想我做的好。
看起来有趣的生病给它一个裂缝和后期结果。 – Neros 2009-12-13 11:05:35
我改变了目录,并上传,但它不工作:S 继承人我的当前htm文件加载的PHP - http://pastebin.com/f4fce85e – Neros 2009-12-13 11:13:35
你不能包括
您可以使用PHP来写出img标签。
此外,for循环将无限运行,因为它有一个始终为真的结束条件。
编辑:看着你的pastebin,它看起来像你误会了PHP的工作原理。
<script src="res/getimages.php"></script>
将不起作用,因为在客户端读取脚本标签。 PHP在服务器端运行。要运行res/getimages.php
,你必须做一些事情,如:我会强烈建议通过一个快速教程工作,如W3Schools PHP Tutorial,这将真正帮助你通过这个。 JavaScript也是如此。你可以不断地询问这一切是如何工作的,但是你永远不会真正理解它,并且不能解决如何把所有的东西放在一起。只要给它几个小时!
来源
2009-12-13 10:54:47 Skilldrick
确定很酷,但我不知道PHP做到这一点:)头脑帮助我了吗? 是的,我知道它无限期运行,我怎么阻止它是我的问题之一。 – Neros 2009-12-13 10:56:49
顺便说一句,圣地狱,这是一个快速回复。 – Neros 2009-12-13 10:57:37
那么你为什么要标记问题PHP呢? – pavium 2009-12-13 11:00:19
感谢所有帮助过我的人,感谢Sergey Kunetsov为他的画廊剧本做了些许修改,完美工作。
和任何人谁想要它,继承人最后工作的PHP。
是得到显示的文件夹是$路径。
享受,再次感谢。
来源
2009-12-14 19:00:30 Neros