Download ไฟล์ทั้งหมด http://banchiangmai.com/download/pic.zip
------------------------------------------------------------------------
ขั้นตอน:
1. สร้างโฟลเดอร์ abc ไว้ใน C:\AppServ\www ดังรูป
2. ดาวน์โหลด ไฟล์ http://banchiangmai.com/download/resize.zip
แล้วนำมา unzip ไว้ที่ในโฟลเดอร์ C:\Appserv\www\abc\
3. ให้สร้างไฟล์ชื่อ pic1.php ให้อยู่ใน C:\AppServ\www\abc
โค้ด: pic1.php
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body>
<form name="form1" method="POST" action="pic2.php" ENCTYPE="multipart/form-data">
Picture <input type="file" name="p" size="60">
<br>
<input type="submit" value="Save">
</form>
</body>
</html>
form จะมีคำสั่งเพิ่มคือ ENCTYPE="multipart/form-data" เพื่อให้รับไฟล์ได้
<input type="file"> จะเป็นการสร้าง form control ที่มีปุ่ม สำหรับเลือกไฟล์
4. ให้ run ไฟล์ดังนี้ http://localhost/abc/pic1.php จะเห็นผลลัพธ์ดังรูป
5. ให้สร้างไฟล์ pic2.php
โค้ด: pic2.php
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body>
<?php
include("resize.php");
?>
<?php
$p=$_FILES['p'];
$p_type=$_FILES["p"]['type'];
?>
<?php
function check_type_only_pic($type_check) {
$File_Type_Allow = array(
"image/gif" /* .gif*/,
"image/pjpeg" /*.jpg, .jpeg*/,
"image/jpeg" /* .jpg, .jpeg*/);
for ($i=0;$i<count($File_Type_Allow);$i++) {
if ($File_Type_Allow[$i] == $type_check) {
return true;
}
}
return false;
}
?>
<?php
if(!empty($p_type)){ //ถ้ามีการเลือกรูปภาพ
$check_type=check_type_only_pic($p_type);
if($check_type){
$num_random=array("2","3","4","5","6","7","8","9"); //สร้างชื่อไฟล์ แบบสุ่มตัวเลข 6 ตัว
$fn='';$n=0;
while($n<=5){
$ran_num = $num_random[rand(0,7)];
$fn = $fn.$ran_num;
$n++;
}
if (!empty($_FILES['p']['name'])) {
$tempFile = $_FILES['p']['tmp_name'];
$ext = pathinfo($_FILES['p']['name'], PATHINFO_EXTENSION);
$filename_of_picture=$fn.'.'.$ext; //ชื่อไฟล์ และ นามสกุล
$targetFile="$filename_of_picture";
move_uploaded_file($tempFile,$targetFile); //copy รูปเก็บไว้ที่ Server
$image = new SimpleImage();
$image->load("$targetFile");
$image->resizeToWidth(100);
$image->save("$filename_of_picture");
//copy รูปเก็บไว้ที่ Server ให้ทับไฟล์เดิม โดยย่อรูปให้กว้าง 100px
echo "copy รูปลงเก็บไว้ เรียบร้อยแล้ว";
}
}
}
?>
</body>
</html>
6. ให้ run ไฟล์ดังนี้ http://localhost/abc/pic1.php จะเห็นผลลัพธ์ดังรูป
7. คลิกปุ่ม Browse...
8. คลิกปุ่ม Save
9. จากไฟล์ pic1.php จะส่งตัวแปร มาที่ไฟล์ pic2.php และมีข้อความแสดงว่า copy ไฟล์รูป เรียบร้อยแล้ว
10. เข้าไปยังโฟลเดอร์ abc จะเห็นว่ามีไฟล์รูป ขนาดกว้าง 100px อยู่ ซึ่งชื่อของรูป จะสุ่มจากโปรแกรมมาให้








ไม่มีความคิดเห็น:
แสดงความคิดเห็น