폴더안에 이미지 하나만 나오게할련면

폴더안에 이미지 하나만 나오게할련면

QA

폴더안에 이미지 하나만 나오게할련면

본문

제가 게시판으로 사진올리기 해서 사진을 올리면

 

date/file/폴더/

안에 전 하나만 올렸는데 용량이 재각각인 사진이 4장이나 나오네요

사진은 다 똑같고 원본 썸네일 뭐 이런거 등등인거같은데

 

이것 때문에 이미지 미리보기 에도 같은 이미지가 4장이 다 나오네요...

 

혹시 폴더에 사진 1장 원본 삭제 하던 썸네일로 된 것만 보이게할려면 어디를 수정해야하나요? 

이 질문에 댓글 쓰기 :

답변 1

foreach (glob('data/file/폴더/*') as $v)

    if (strpos($v, 'thumb-') !== false) $files[] = $v;

 

밑에처럼 했는데 사진이 안나오는데요^^;;


<?
$path="./board/data/file/1111"; 
$entrys = array();
$dirs = dir($path);
while(false !== ($entry = $dirs->read())){
if(($entry != '.') && ($entry != '..')) { 
if(!is_dir($path.'/'.$entry)) {
    $entrys[] = $entry; 



$dirs->close();
?>

<!-- Add Arrows -->
 <div class="swiper-button-next swiper-button-white"></div>
 <div class="swiper-button-prev swiper-button-white"></div>
 <div class="swiper-container gallery-thumbs">
 <div class="swiper-wrapper">
 <?
  asort($entrys);
  foreach (glob('data/file/1111/*') as $v)
  if (strpos($v, 'thumb-') !== false) $files[] = $v;
  foreach( $entrys as $img ) {
?>

<div class="swiper-slide" style="background-image:url(./board/data/file/1111/<?=$img?>);"></div>
<? 
}
?>
</div>
</div>

<!--trendbook slide  끝 -->

<!-- Swiper JS -->
<script src="../JS/swiper.js" type="text/javascript"></script>
<script src="../JS/swiper.min.js" type="text/javascript"></script>

    <!-- Initialize Swiper -->
    <script>


 
    var galleryThumbs = new Swiper('.gallery-thumbs', {
        spaceBetween: 5,
        slidesPerView: 5,
        touchRatio: 0.2,
        loop:true,
        loopedSlides: 5, //looped slides should be the same
        slideToClickedSlide: true
    });
    galleryTop.params.control = galleryThumbs;
 
   
    </script>

이렇게 수정해봤는데도 사진은 나오는데 파일에 있는 사진 장수만큼 똑같이 다 노출되네요,...
폴더에 이미지를 줄일수있는방법은 없나요?

 <? 
 asort($entrys);
  foreach (glob('data/file/trendbook/*') as $img)
  if (strpos($img, 'thumb-') !== false) $files[] = $img;
  foreach( $entrys as $img ) {
?>
<div class="swiper-slide" style="background-image:url(./board/data/file/trendbook/<?=$img?>);"></div>
<? 
}
?>

두방법을 다해봤는데 이미지가 아에 나오지가않아요

<div class="swiper-wrapper">
<?
foreach (glob('data/file/1111/*') as $v)
  if (strpos($v, 'thumb-') !== false)
    echo "<div class=\"swiper-slide\" style=\"background-image:url($v);\"></div>";
?>
</div>

이렇게도해보고

<div class="swiper-wrapper">
<?
foreach (glob('data/file/1111/*') as $img)
  if (strpos($img, 'thumb-') !== false)
    echo "<div class=\"swiper-slide\" style=\"background-image:url($img);\"></div>";
?>
</div>

이렇게 하닌까 화면에 all file 다음 칸에 thumb file 이글이 떠요
<?
$path="./board/data/file/1111"; 
$entrys = array();
$dirs = dir($path);
while(false !== ($entry = $dirs->read())){
if(($entry != '.') && ($entry != '..')) { 
if(!is_dir($path.'/'.$entry)) {
    $entrys[] = $entry; 



$dirs->close();
?>


<!-- Add Arrows -->
 <div class="swiper-button-next swiper-button-white"></div>
 <div class="swiper-button-prev swiper-button-white"></div>
 <div class="swiper-container gallery-thumbs">
 <div class="swiper-wrapper">
<?
$dir = 'data/file/1111/';
echo 'all file<br>';
foreach (glob($dir . '*') as $v) echo  $v . '<br>';
echo '<br><br> thumb file<br>';
foreach (glob($dir . '*thumb*') as $v) echo  $v . '<br>';
?>
<div class="swiper-slide" style="background-image:url(./board/data/file/1111/<?=$v?>);"></div>

</div>
</div>

// 디렉토리 확인
$dir = 'data/file/게시판/'; // 파일저장위치는 본인에  맞게 수정하세요
if (!is_dir($dir)) {
    echo "<script>alert('dir is not exist')</script>";
    exit;
}

// 방법 1
$pattern = 'thumb-'; // 파일명에 있는 thumb
//$pattern = '600x450'; // 파일명에 있는 해상도
$files = glob($dir . "*$pattern*");
if (!count($files)) echo "<script>alert('glob thumb is not exist')</script>";;
foreach ($files as $v)
  echo "<div class=\"swiper-slide\" style=\"background-image:url('$v')\"></div>";

// 방법 2
$dirs = dir($dir);
while (false !== ($v = $dirs->read())){
    if ($v != '.' && $v != '..') {
        if (!is_dir($dir . $v)) {
if (strpos($v, $pattern) !== false) {
echo "<div class=\"swiper-slide\" style=\"background-image:url('$dir$v')\"></div>";
}
        }
    }
}
$dirs->close();

잘 이해가안가네요^^;;;

이렇게 적용했는데 dir is not exist만 뜨고 아무것도 안나오네요

 <?
$dir = 'data/file/1111/'; // 파일저장위치는 본인에  맞게 수정하세요
if (!is_dir($dir)) {
    echo "<script>alert('dir is not exist')</script>";
    exit;
}

?>
<?

$dirs = dir($dir);
while (false !== ($v = $dirs->read())){
    if ($v != '.' && $v != '..') {
        if (!is_dir($dir . $v)) {
if (strpos($v, $pattern) !== false) {
echo "<div class=\"swiper-slide\" style=\"background-image:url('$dir$v')\"></div>";
}
        }
    }
}
$dirs->close();
?>
밑에 내용 없이 가능한건가요?
 <?
$path="./board/data/file/1111"; 
$entrys = array();
$dirs = dir($path);
while(false !== ($entry = $dirs->read())){
if(($entry != '.') && ($entry != '..')) { 
if(!is_dir($path.'/'.$entry)) {
    $entrys[] = $entry; 



$dirs->close();
?>

<!-- Add Arrows -->
 <div class="swiper-button-next swiper-button-white"></div>
 <div class="swiper-button-prev swiper-button-white"></div>
 <div class="swiper-container gallery-thumbs">
 <div class="swiper-wrapper">
 <?
  asort($entrys);
  foreach (glob('data/file/1111/*') as $img)
  if (strpos($img, 'thumb-') !== false) $files[] = $img;
  foreach( $entrys as $img ) {
?>
<div class="swiper-slide" style="background-image:url(./board/data/file/1111/<?=$img?>);"></div>
<? 
}
?>
</div>
</div>

답변을 작성하시기 전에 로그인 해주세요.
전체 774
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT