ใช้ php ดึงรูปภาพ จากโฟลเดอร์ มาแสดง พร้อม เทคนิค แบ่งหน้า

เขียนเมื่อ 10 ปีก่อน โดย Ninenik Narkdee
ดึงรูปภาพ แบ่งหน้า php

คำสั่ง การ กำหนด รูปแบบ ตัวอย่าง เทคนิค ลูกเล่น การประยุกต์ การใช้งาน เกี่ยวกับ ดึงรูปภาพ แบ่งหน้า php



ตัวอย่างโค้ดต่อไปนี้ เป็นวิธีการดึงรูปภาพ ที่อยู่ในโฟลเดอร์ที่ต้องการ มาแสดง โดยจะเรียงลำดับการแสดงตามชื่อของรูปภาพ
 

<?php
$allowed_types=array('jpg','jpeg','gif','png');
$dir    ="img_pic/";
$files1 = scandir($dir);
foreach($files1 as $key=>$value){
	if($key>1){
		$file_parts = explode('.',$value);
		$ext = strtolower(array_pop($file_parts));
		if(in_array($ext,$allowed_types)){
			echo "<img style='width:100px;' src='".$dir.$value."'/>&nbsp;";	
		}

	}
}
?> 

ตัวอย่าง
http://www.ninenik.com/demo/scan_image_in_folder.php

นอกจากนี้สามารถ นำโค้ดข้างต้น มาประยุกต์ เช่น ในโฟลเดอร์ มีรูปจำนวนมาก และต้องการนำมาแสดง ตามจำนวนที่ต้องการกำหนด เช่น แสดงครั้งละ 20 รูป พร้อมกับมีหน้าเพจ ให้เลือกดูรูปในหน้าถัดไป ศึกษาจากโค้ดด้านล่าง
 

<?php
$allowed_types=array('jpg','jpeg','gif','png');
$dir    ="img_pic/";
$files1 = scandir($dir);
$total=0; // นับจำนวนรูปทั้งหมด
$pic_path=array();
foreach($files1 as $key=>$value){
	if($key>1){
		$file_parts = explode('.',$value);
		$ext = strtolower(array_pop($file_parts));
		if(in_array($ext,$allowed_types)){
			$pic_path[]=$dir.$value;
			$total++;
			
		}

	}
}
// จำนวนรายการที่ต้องการแสดง แต่ละหน้า
$perPage = 2;

// คำนวณจำนวนหน้าทั้งหมด
$num_naviPage=ceil($total/$perPage);

// กำหนดจุดเริ่มต้น และสิ้นสุดของรายการแต่ละหน้าที่จะแสดง
if(!isset($_GET['page'])){
	$s_key=0;
	$e_key=$perPage;	
	$_GET['page']=1;
}else{
	$s_key=($_GET['page']*$perPage)-$perPage;
	$e_key=$perPage*$_GET['page'];
	$e_key=($e_key>$total)?$total:$e_key;
}
for($i=1;$i<=$num_naviPage;$i++){
	echo "  || <a href=\"?page=".$i."\">Page $i</a>";	
}
echo "<hr>";

// แสดงรายการ
for($indexPicture=$s_key;$indexPicture<$e_key;$indexPicture++){

		echo "<img style='width:100px;' src='".$pic_path[$indexPicture]."'/>&nbsp;";	
}

// แสดงหน้าปัจจุบัน
echo "<br>Page:".$_GET['page'];
?> 

ตัวอย่าง
http://www.ninenik.com/demo/scan_image_in_folder_page.php



กด Like หรือ Share เป็นกำลังใจ ให้มีบทความใหม่ๆ เรื่อยๆ น่ะครับ











URL สำหรับอ้างอิง











เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ