我正在尝试创建一个基本的图片库,我在这里找到了一个如何操作的教程:http://webcheatsheet.com/php/create_thumbnail_images.php
但是,使用此代码只会在缩略图所在的网页上显示损坏的图像。缩略图确实存在,文件权限都很好,所以这不是问题。我确实修改了一点功能,所以我想知道这是不是问题。
以下是generate_gallery()
的修改版本。
function generate_gallery($basePath) {
$pathToThumbs = $basePath . ".thumbs/";
$output = "<table cellspacing=\"0\" cellpadding=\"2\" width=\"500\">";
$output .= "<tr>";
// open the directory
$dir = opendir($pathToThumbs);
$counter = 0;
// loop through the directory
while (false !== ($fname = readdir($dir))) {
// strip the . and .. entries out
if ($fname != '.' && $fname != '..') {
$output .= "<td valign=\"middle\" align=\"center\"><a href=\"{$basePath}{$fname}\">";
$output .= "<img src=\"{$pathToThumbs}{$fname}\" border=\"0\" />";
$output .= "</a></td>";
$counter += 1;
if ($counter % 4 == 0) {
$output .= "</tr><tr>";
}
}
}
// close the directory
closedir($dir);
$output .= "</tr>";
$output .= "</table>";
echo $output;
}
此外,这里是它生成的页面中的HTML。 (很抱歉格式不佳。顺便提一下,如何让PHP将HTML放在新行和东西上?)文件夹中有一个鸭子的测试图像,因此应该出现鸭子的缩略图。相反,我得到的只是一张破碎的图片。
<html>
<head>
<meta charset="UTF-8">
<title>20141120.1130</title>
</head>
<body>
<a href="index.php">Back to Index</a><br>250-ducks.png<br><table cellspacing="0" cellpadding="2" width="500"><tr><td valign="middle" align="center"><a href="/mnt/ddcs_a/AEMP/Screens/20141120.1130/250-ducks.png"><img src="/mnt/ddcs_a/AEMP/Screens/20141120.1130/.thumbs/250-ducks.png" border="0" /></a></td></tr></table> </body>
答案 0 :(得分:0)
更改脚本中的以下代码
$pathToThumbs = $basePath . "/thumbs/";
$output .= "<td valign=\"middle\" align=\"center\"><a href=\"{$fname}\">";
$output .= "<img src=\"{$fname}\" border=\"0\" />";
无需使用绝对路径。