大家好,感谢阅读本文。我正试着从文件夹里读几张照片。在我的表中,我有一个名为"路径"的字段,这是我试图调用以列出图像的文件夹的名称,所以我的代码在这里(很抱歉,我无法应用我的代码,有些验证错误(:
<?
$conexion = mysql_connect("localhost","miuser","mipass") or die("Error al conectar a la BD");
$db = mysql_select_db("midb");
$sql = "SELECT * FROM fotos";
$obj = mysql_query($sql) or die ("Error de query [".$sql."]");
?>
while($resultado = mysql_fetch_array($obj))
{
?>
<img width="210" height="138" src="images/media/<? echo $resultado["foto"];?>" />
}
?>
mysql_close($conexion);
?>
我尝试了scandir,但无法获得以下HTML输出格式:
title 1 (folder1)
image1.jpg
image2.jpg
然后是下一个文件夹
title 32 (folder32)
image1.jpg
image2.jpg
image3.jpg
image4.jpg
然后是另一个一文件夹
title 54 (folder54)
image4.jpg
image77.jpg
就像你看到的,我需要列出文件夹中的图像,一个接一个的文件夹内容。举个例子:如果文件夹1中有3个图像,那么代码应该在div中列出这3个图像。我希望这能有所帮助:/
<?php
function read_folder_directory($dir = "path")
{
$listDir = array();
if($handler = opendir($dir)) {
while (($sub = readdir($handler)) !== FALSE) {
if ($sub != "." && $sub != ".." && $sub != "Thumb.db" && $sub != "Thumbs.db") {
if(is_file($dir."/".$sub)) {
$listDir[] = $sub;
}elseif(is_dir($dir."/".$sub)){
$listDir[$sub] = ReadFolderDirectory($dir."/".$sub);
}
}
}
closedir($handler);
}
return $listDir;
}
?>
使用:
<?php
$files = read_folder_directory ();
if ($files)
{
foreach ($files as $file)
{
echo $file."<br/>"
}
}
?>
看看这些例子——http://php.net/manual/en/function.readdir.php
$sql = "SELECT * FROM fotos";
$previousDirName = false;
$obj = mysql_query($sql) or die ("Error de query [".$sql."]");
while($resultado = mysql_fetch_array($obj)) {
$dirName = pathinfo($resultado["foto"], PATHINFO_DIRNAME);
if ( $dirName != $previousDirName ) {
if ( $previousDirName ) { ?></div><? }
?><div><div class="path"><? echo $dirName ?></div><?
}
?><div class="photo"><img width="210" height="138" src="images/media/<? echo pathinfo($resultado["foto"], PATHINFO_BASENAME);?>" /></div><?
$previousDirName = $dirName;
}
?></div><? // closes last path div
}
mysql_close($conexion);
?>
这假设"foto"字段是完整的路径,而不仅仅是文件名。
已解决!我只是用了一些这样的代码:
$directorio = "images/media/".$objResult["full"];
$images = scandir($directorio);
所以感谢大家:(