2011-11-17 5 views
-1

안녕하세요,이 책을 읽어 주셔서 감사합니다. 폴더에서 여러 장의 사진을 읽으려고합니다.PHP와 MySQL을 사용하여 폴더에서 이미지 읽기

<? 
$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); 
?> 
: 내 코드 here (미안하지만 난 내 코드 일부 유효성 검사 오류를 적용하지 못할) 그래서 내 테이블에서 내가 "경로"라는 필드를 가지고이 이미지를 나열하는 전화를하려고 메신저 폴더의 이름입니다

나는 위해 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 개의 이미지로 나열해야합니다. 사용/

+0

귀하의 "코드"아직 HTML ...에 대한 상자에 붙여 넣을 PHP입니다 감사가 작동하지 않을 이잖아 ... 수 'fotos' 테이블의 스키마를 보여줍니다 ... 그리고 샘플 데이터 – ManseUK

+0

다른 사이트가 아니라 Stackoverflow에 코드를 게시하십시오. –

+0

귀하의 예는 효과가 없습니다. –

답변

0

해결! 난 그냥 다음과 같은 몇 가지 코드를 사용

$directorio = "images/media/".$objResult["full"]; 
$images = scandir($directorio); 

을 그래서 당신은 모든 :)

0
<?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

+0

@roselan 그 예를 들어 주셔서 감사합니다. 제 예제에서 약간의 수정을했습니다. http://jsbin.com/ehezew/2/edit 저는 몇 가지 오류가 있었지만 지금은 모든 도움 사람에게 감사드립니다! – fecapeluda

0
$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); 
?> 

이 "사진"필드는 전체 경로, 아닌 것으로 가정 파일 이름 만.

관련 문제