กลุ่มผู้ดูแลระบบแห่งประเทศไทย กลุ่มผู้ดูแลระบบแห่งประเทศไทย
3 สิงหาคม 2015, 11:34:05 *
ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน
ส่งอีเมล์ยืนยันการใช้งาน?

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

Thaiadmin on Social NetworkThaiadmin on TwitterThaiadmin on Facebook Group

ข่าว:
  หน้าแรก   เวบบอร์ด   ค้นหา ช่วยเหลือ เจ้าหน้าที่ เข้าสู่ระบบ ลืมรหัสผ่าน? คำเแนะนำ สมัครสมาชิก Register via Facebook Register via Google+  
+ กลุ่มผู้ดูแลระบบแห่งประเทศไทย » Developer Zone » Web Development » หัวข้อ:
|-+ อยาได้ code เกี่ยวกับการนำ upfile รูปภาพ โดย ใช้ php กับ Mysql


หน้า: [1]   ลงล่าง
  เพิ่มบุ้คมาร์ค  |  พิมพ์  
ผู้เขียน หัวข้อ: อยาได้ code เกี่ยวกับการนำ upfile รูปภาพ โดย ใช้ php กับ Mysql  (อ่าน 4635 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
Doraemee
Proficient Level 5
*****


จิตพิสัย: 0
ออฟไลน์ ออฟไลน์

กระทู้: 182

สมาชิกลำดับที่ 22897

Posting Frequency










 ระดับถัดไป:
 20% ( 2 / 10 )

« เมื่อ: 23 มกราคม 2008, 23:23:01 »

อยาได้ code เกี่ยวกับการนำ upfile  รูปภาพ โดย ใช้ php  กับ Mysql   
คือตอนนี้ยังติดปัญหาตรง รูป อย่างเดียวแล้วคับ ช่วยหน่อยคับผม Cry

Share topic : บันทึกการเข้า

<b>กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย</b>
rtee
Stager Tier 4
****


จิตพิสัย: 18
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 989

สมาชิกลำดับที่ 4240

Posting Frequency










 ระดับถัดไป:
 61.29% ( 19 / 31 )

« ตอบ #1 เมื่อ: 24 มกราคม 2008, 08:48:33 »

ส่วน form
โค๊ด: Select | Copy
<form method="post" action="xxx.php" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" name="Submit" value="Submit">
</form>

ส่วนเก็บข้อมูล
โค๊ด: Select | Copy
$file = $_FILES['file'];
$src = $file['tmp_name'];
$dst = "pic/".$file['name'];
if (copy($src,$dst)){
  echo "OK";
}
else {
  echo "FAIL";
}

เก็บเอาเฉพาะชื่อไฟล์ลงไปในฐานข้อมูล

Share topic : บันทึกการเข้า

กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย
จูกัดเหลียง (ก๊วยเจ๋ง)
Thaiadmin Meeting
*****


จิตพิสัย: 2
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 622

สมาชิกลำดับที่ 2284

Posting Frequency


...









 ระดับถัดไป:
 44% ( 22 / 50 )

« ตอบ #2 เมื่อ: 24 มกราคม 2008, 09:04:31 »

อันนี้ผมเอามาจากเว็บ thaicreate นะครับลองดูนะครับ ในเว็บนั้นก็มีข้อมุลอีกเพียบครับ  Afro

ออกแบบฐานข้อมูลดังนี้

Create Database picture;

CREATE TABLE picture (
id int(3) NOT NULL auto_increment,
images longblob NOT NULL,
PRIMARY KEY (id)
);


ขั้นที่ 1 ทำ From เพื่อ เลือกไฟล์ที่จะ uploads

Sample1.php

<html>
<head>
<title>Un title page</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
<style type="text/css">
<!--
body { margin: 0px 0px; padding: 0px 0px}
a:link { color: #005CA2; text-decoration: none}
a:visited { color: #005CA2; text-decoration: none}
a:active { color: #0099FF; text-decoration: underline}
a:hover { color: #0099FF; text-decoration: underline}
-->
</style>
</head>
<body bgcolor="#FFFFFF">
<br>
<form method="POST" action="sample2.php" enctype ="multipart/form-data">
<font face="MS Sans Serif" size="2"> แก้ไข Logo</font>
<input type="file" name="files">
<input type="submit" name="Submit" value="uploads">
</form>
</body>
</html>



Share topic : บันทึกการเข้า
Ford AntiTrust
Thaiadmin VIP
*****

 Thaiadmin Writer


จิตพิสัย: 36
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 213

สมาชิกลำดับที่ 523

Posting Frequency


ความง่าย ไม่เคยทำให้ใครเก่ง


เว็บไซต์






 ระดับถัดไป:
 30% ( 3 / 10 )

« ตอบ #3 เมื่อ: 24 มกราคม 2008, 16:36:33 »

เอาแบบ full option แล้วกันนะครับ

Wink


โค๊ด: Select | Copy
define("HMF_UPLOAD_TXT_UPLOAD_COMPLETE", "Upload เสร็จสมบูรณ์.");
define("HMF_UPLOAD_TXT_UPLOAD_ERROR_SIZE", "The uploaded file exceeds the 'filesSize' setting directive.");
define("HMF_UPLOAD_TXT_UPLOAD_ERROR_TYPE", "รูปแบบไฟล์ผิดจากที่กำหนด");
define("HMF_UPLOAD_TXT_UPLOAD_ERROR_OPERATION", "Operation error on Error Messages Explained.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_INI_SIZE", "The uploaded file exceeds the upload_max_filesize directive.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_FORM_SIZE", "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_PARTIAL", "The uploaded file was only partially uploaded.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_NO_FILE", "No file was uploaded.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_NO_TMP_DIR", "Missing a temporary folder.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_EXTENSION", "File upload stopped by extension.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_CANT_WRITE", "Failed to write file to disk.");
define("HMF_UPLOAD_TXT_UPLOAD_ERR_DEFAULT", "An unknown file upload error occured.");
define("UPLOAD_ERR_FILE_SIZE", "-1");
define("UPLOAD_ERR_FILE_TYPE", "-2");

class Upload {

    private $mimeType = array();
    private $extensionType = array();
    private $checkUploadStatusText = array();
    private $fileNameUploads = array();
    private $fileSizeUploads = array();
    private $fileMimeTypeUploads = array();
    private $fileExtTypeUploads = array();
    private $formInputName;
    private $filesSize = "2097152";
    private $desinationStoreFiles;
    private $formBegin = false;
    private $dirUpload;
    private $storeFilesName = NULL;

    public function SetDirUpload($value) {
        $this->dirUpload = $value;
    }
    public function GetDirUpload() {
        return $this->dirUpload;
    }
    public function SetInputName($value) {
        $this->formInputName = $value;
    }
    public function GetInputName() {
        return $this->formInputName;
    }
    public function SetFilesSize($value) {
        $this->filesSize = $value;
    }
    public function GetFilesSize() {
        return $this->filesSize;
    }
    public function SetAllowMimeType($mimeType) {
        if(is_array($mimeType)) $this->mimeType = $mimeType;
        else $this->mimeType[] = $mimeType;
    }
    public function GetAllowMimeType() {
        return $this->mimeType;
    }
    public function SetAllowExtType($extensionType) {       
        if(is_array($extensionType)) $this->extensionType = $extensionType;       
        else $this->extensionType[] = strtolower($extensionType);   
    }
    public function GetAllowExtType() {
        return $this->extensionType;
    }
    public function SetFileNameUploads($index, $value) {
        $this->fileNameUploads[$index] = $value;
    }
    public function GetFileNameUploads() {
        return $this->fileNameUploads;
    }
    public function SetFileSizeUploads($index, $value) {
        $this->fileSizeUploads[$index] = $value;
    }
    public function GetFileSizeUploads() {
        return $this->fileSizeUploads;
    }
    public function SetFileMimeTypeUploads($index, $value) {
        $this->fileMimeTypeUploads[$index] = $value;
    }
    public function GetFileMimeTypeUploads() {
        return $this->fileMimeTypeUploads;
    }
    public function SetFileExtTypeUploads($index, $value) {
        if(is_array($value)) $this->FileExtTypeUploads = $value;
        $this->fileExtTypeUploads[$index] = strtolower($value);
    }
    public function GetFileExtTypeUploads() {
        return $this->fileExtTypeUploads;
    }
    public function SetStoreFilesName($name) {
        if(is_array($name)) $this->storeFilesName = $name;
        $this->storeFilesName[] = $name;
    }
    public function GetStoreFilesName() {
        return $this->storeFilesName;
    }
    public function SetDestinationStoreFiles($index, $value) {
        if(is_array($value)) $this->desinationStoreFiles = $value;
        $this->desinationStoreFiles[$index] = $value;
    }
    public function GetDestinationStoreFiles() {
        return $this->desinationStoreFiles;
    }
    public function ActionUpload() {
        $storeFilesName = $this->GetStoreFilesName();
        foreach ($_FILES[$this->GetInputName()]["error"] as $key => $error) {
            $name = $_FILES[$this->GetInputName()]["name"][$key];
            $fileExt = $this->GetExt($name);
            if($error != 4 ) {
                if ($this->CheckUpload($key, $error)) {
                    if($this->CheckMimeType($_FILES[$this->GetInputName()]["type"][$key]) or $this->CheckExtType($fileExt) ) {
                        if($this->CheckSize($_FILES[$this->GetInputName()]["size"][$key])) {
                            $tmp_name = $_FILES[$this->GetInputName()]["tmp_name"][$key];
                            if(!empty($storeFilesName[$key])) $name = $storeFilesName[$key].'.'.$fileExt;
                            if(file_exists($this->GetDirUpload().'/'.$name)) unlink($this->GetDirUpload().'/'.$name);
                            move_uploaded_file($tmp_name, $this->GetDirUpload().'/'.$name);
                            $this->SetDestinationStoreFiles($key, $this->GetDirUpload().'/'.$name);
                        }
                        else {
                            $this->CheckUpload($key, UPLOAD_ERR_FILE_SIZE);
                        }
                    }
                    else {
                        $this->CheckUpload($key, UPLOAD_ERR_FILE_TYPE);
                    }
                }
                $this->SetFileNameUploads($key, $_FILES[$this->GetInputName()]["name"][$key]);
                $this->SetFileSizeUploads($key, $_FILES[$this->GetInputName()]["size"][$key]);
                $this->SetFileMimeTypeUploads($key, $_FILES[$this->GetInputName()]["type"][$key]);
                $this->SetFileExtTypeUploads($key, $fileExt);
            }
        }
    }
    public function CheckExtType($value) {
        $arr_type = $this->GetAllowExtType();
        return in_array(strtolower($value), $arr_type);
    }
    public function CheckMimeType($value) {
        $arr_type = $this->GetAllowMimeType();
        return in_array($value, $arr_type);
    }
   public function CheckSize($value) {
        if($value <= $this->GetFilesSize()) return true;
        else return false;
    }
    public function SetUploadStatusText($index, $code, $text, $bool) {
        $this->checkUploadStatusText[$index] = array('code' => $code, 'text'=>$text, 'bool'=>$bool);
    }
    public function GetUploadStatusText($index = NULL) {
        if(empty($index)) return $this->checkUploadStatusText;
        return $this->checkUploadStatusText[$index];
    }
    public function CheckUpload($index, $value) {
        switch ($value) {
            case UPLOAD_ERR_OK:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_COMPLETE, true);
                return true;
            case UPLOAD_ERR_INI_SIZE:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_INI_SIZE, false);
                return false;
            case UPLOAD_ERR_FORM_SIZE:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_FORM_SIZE, false);
                return false;
            case UPLOAD_ERR_PARTIAL:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_PARTIAL, false);
                return false;
            case UPLOAD_ERR_NO_FILE:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_NO_FILE, false);
                return false;
            case UPLOAD_ERR_NO_TMP_DIR:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_NO_TMP_DIR, false);
                return false;
            case UPLOAD_ERR_CANT_WRITE:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_CANT_WRITE, false);
                return false;
            case UPLOAD_ERR_EXTENSION:
                $this->SetUploadStatusText($index, $value, HMF_UPLOAD_TXT_UPLOAD_ERR_EXTENSION, false);
                return false;
            case UPLOAD_ERR_FILE_SIZE:
                $this->SetUploadStatusText($index, -1, HMF_UPLOAD_TXT_UPLOAD_ERROR_SIZE, false);
                return false;
            case UPLOAD_ERR_FILE_TYPE:
                $this->SetUploadStatusText($index, -2, HMF_UPLOAD_TXT_UPLOAD_ERROR_TYPE, false);
                return false;
            default:
                $this->SetUploadStatusText($index, NULL, HMF_UPLOAD_TXT_UPLOAD_ERR_DEFAULT, false);
                return false;
        }
    }
    public function GetActionInfo() {
        $result_details['name'] = $this->GetFileNameUploads();
        $result_details['destination'] = $this->GetDestinationStoreFiles();
        $result_details['size'] = $this->GetFileSizeUploads();
        $result_details['ext'] = $this->GetFileExtTypeUploads();
        $result_details['mime'] = $this->GetFileMimeTypeUploads();
        $result_details['status'] = $this->GetUploadStatusText();       
        return $result_details;
    }
    public function GetExt($filename){
        return strtolower(substr(strrchr($filename, '.'), 1));
    }
}

แล้วนี่ code html

โค๊ด: Select | Copy
<form method="post" action="upload.php" enctype="multipart/form-data">
    <input type="file" id="fdata" name="fdata[]"/>
    <input type="file" id="fdata" name="fdata[]"/>
    <input type="file" id="fdata" name="fdata[]"/>
    <input type="submit" />
</form>

จะสังเกตว่าผมใช้ html แบบ method-post แล้วใช้ร่วมกับ array data ครับ ทำให้สามารถส่งข้อมูลหลายๆ ค่าได้ในตัวแปรเดียวกันเลยตอน post

แล้วก็ code หน้าสำหรับเอาไว้ทำงาน

โค๊ด: Select | Copy
    $objUpload = new Upload();
    $objUpload->SetDirUpload('upload');
    $objUpload->SetStoreFilesName(array('1','2','3'));
    $objUpload->SetInputName('fdata');
    $objUpload->SetAllowExtType(array('jpeg','jpg','png','gif'));
    $objUpload->ActionUpload();
    $status = $objUpload->GetActionInfo();

SetDirUpload - กำหนด directory ปลายไม่ (ไม่ต้องใส่ / ต่อท้าย)
SetStoreFilesName - กำหนดชื่อของไฟล์ที่จะเอาไปวางไว้ปลายทาง กำหนดเป็น array ตาม index ถ้ามี 3 field ก็กำหนด 3 index แต่ถ้าไม่กำหนดจะเป็นชื่อของไฟล์นั้น ๆ เลย
SetInputName - เชื่อ file field ที่เราจะให้มันส่งค่า ไม่ต้องใส่ [] ต่อท้ายครับ
SetAllowExtType - กำหนดนามสกุลที่ต้องการให้ upload ได้ ใส่เป็น array ไป
SetAllowMimeType - กำหนด Mime-type ของไฟล์ลงได้ด้วย กำหนดแบบเดียวกับ SetAllowExtType
ActionUpload - สั้งให้รับค่า upload แล้วทำงาน
GetActionInfo - ข้อมูลต่าง ๆ ที่จำเป็นหลังจาก upload ครับ (ในตัวอย่างส่งไปให้กับ $status)

ข้อมูลที่ได้จากตัวแปร $status เป็น Array ครับ ลอง print_r หรือ var_dump ดูครับ

อันนี้ได้จาก var_dump

โค๊ด: Select | Copy
array(6) {
  ["name"]=>
  array(1) {
    [0]=>
    string(12) "DSC00132.JPG"
  }
  ["destination"]=>
  array(1) {
    [0]=>
    string(12) "upload/1.jpg"
  }
  ["size"]=>
  array(1) {
    [0]=>
    int(419231)
  }
  ["ext"]=>
  array(1) {
    [0]=>
    string(3) "jpg"
  }
  ["mimn"]=>
  array(1) {
    [0]=>
    string(11) "image/pjpeg"
  }
  ["status"]=>
  array(1) {
    [0]=>
    array(3) {
      ["code"]=>
      int(0)
      ["text"]=>
      string(44) "Upload เสร็จสมบูรณ์."
      ["bool"]=>
      bool(true)
    }
  }
}

ลอง ๆ เป็น idea ครับ

ตัว code ยังคงมี bug บางส่วน และไม่สมบูรณ์ 100% ครับ แนะนำให้ศึกษาและปรับแก้ถ้าเจอข้อผิดพลาดครับผม

code support for PHP 5.2.x

« แก้ไขครั้งสุดท้าย: 24 มกราคม 2008, 16:43:14 โดย Ford AntiTrust » Share topic : บันทึกการเข้า

PHP Web Developer, .NET/Java Platform Developer, Database/SEO Consultant, Ubuntu Linux, Drupal Implementer
rtee
Stager Tier 4
****


จิตพิสัย: 18
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 989

สมาชิกลำดับที่ 4240

Posting Frequency










 ระดับถัดไป:
 61.29% ( 19 / 31 )

« ตอบ #4 เมื่อ: 24 มกราคม 2008, 16:40:04 »

^
^
สุดยอดอ่ะ

Share topic : บันทึกการเข้า

กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย
few
บุคคลทั่วไป
« ตอบ #5 เมื่อ: 24 มกราคม 2008, 23:36:34 »

แจกอย่างนี้เลยรึ ฟอร์ด ฮ่าๆๆ เจ๋งโครต

Share topic : บันทึกการเข้า
naamning
Naive Member
***


จิตพิสัย: 0
ออฟไลน์ ออฟไลน์

กระทู้: 4

สมาชิกลำดับที่ 19874

Posting Frequency










 ระดับถัดไป:
 50% ( 1 / 2 )

« ตอบ #6 เมื่อ: 24 มกราคม 2008, 23:52:46 »

 Afro สุดยอดมากๆ

Share topic : บันทึกการเข้า

กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย
rtee
Stager Tier 4
****


จิตพิสัย: 18
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 989

สมาชิกลำดับที่ 4240

Posting Frequency










 ระดับถัดไป:
 61.29% ( 19 / 31 )

« ตอบ #7 เมื่อ: 25 มกราคม 2008, 09:05:51 »

แล้วถ้า อัพโหลด พร้อมกับ resize image ไปด้วยอ่ะครับ.... อย่างเช่น ภาพขนาด 800*600 พออัพขึ้นไปก็ลดขนาดเป็น 400*300 เป็นต้นน่ะครับ

Share topic : บันทึกการเข้า

กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย
Ford AntiTrust
Thaiadmin VIP
*****

 Thaiadmin Writer


จิตพิสัย: 36
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 213

สมาชิกลำดับที่ 523

Posting Frequency


ความง่าย ไม่เคยทำให้ใครเก่ง


เว็บไซต์






 ระดับถัดไป:
 30% ( 3 / 10 )

« ตอบ #8 เมื่อ: 25 มกราคม 2008, 09:52:57 »

โค๊ด: Select | Copy
function ImgResizer ($width, $height, $inputFilePath, $outputFilePath) {
    if(!file_exists($inputFilePath)) return false;
// Get image file info
$imageInfo = getImageSize($inputFilePath) ;
// Get new dimensions
$widthOriginal = $imageInfo[0]; // width
$heightOriginal = $imageInfo[1]; // height
if ($width && ($widthOriginal < $heightOriginal)) $width = ($height / $heightOriginal) * $widthOriginal;
else $height = ($width / $widthOriginal) * $heightOriginal;
// Content type
switch ($imageInfo['mime']) {
case 'image/gif':
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromgif($inputFilePath);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $widthOriginal, $heightOriginal); // Resample
imagegif($image_p, $outputFilePath, 100); // Output
return true;
case 'image/jpeg':
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($inputFilePath);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $widthOriginal, $heightOriginal); // Resample
imagejpeg($image_p, $outputFilePath, 100); // Output
return true;
case 'image/png':
$image_p = imagecreatetruecolor($width, $height);
            imagealphablending($image_p, false);
$image = imagecreatefrompng($inputFilePath);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $widthOriginal, $heightOriginal); // Resample
            imagesavealpha($image_p, true);
imagepng($image_p, $outputFilePath, 0); // Output
return true;
}
}

ก็ใส่ function ImgResizer นี้ไปก่อน

แล้วก็ ActionUpload จะได้ path ไฟล์ที่เป็นปลายทาง แล้วเอาปลายทางนั้นแหละมา resize อีกทีนึง

โดยการจะ resize ก็ตรวจสอบพวก error code หรือพวก status ต่าง ๆ ก่อนว่า upload ได้หรือไม่ก่อน ไม่งั้นมันจะไป resize รูปแล้วได้วาง ๆ กลับมา

โค๊ด: Select | Copy
   if(count($status['destination']) > 0 ) {
        foreach( $status['destination'] as $key=>$destination) {
            if($status['status'][$key]['bool'] === true)
                ImgResizer( /*W*/ 100, /*H*/ 100,  /*Read from ....*/ $destination, /*Write to ....*/ 'tmb_'.$destination );
        }
    }

จริง ๆ ตัวนี้เป็น Scale Image มากกว่า resize ครับ คือมันจะวัดเป็นสัดส่วนมากกว่า เพื่อคงสัดส่วนของภาพให้คงที่ทั้งด้านกว้างและยาวครับ



Confirmed by:

« แก้ไขครั้งสุดท้าย: 25 มกราคม 2008, 09:58:58 โดย Ford AntiTrust » Share topic : บันทึกการเข้า

PHP Web Developer, .NET/Java Platform Developer, Database/SEO Consultant, Ubuntu Linux, Drupal Implementer
Doraemee
Proficient Level 5
*****


จิตพิสัย: 0
ออฟไลน์ ออฟไลน์

กระทู้: 182

สมาชิกลำดับที่ 22897

Posting Frequency










 ระดับถัดไป:
 20% ( 2 / 10 )

« ตอบ #9 เมื่อ: 2 กุมภาพันธ์ 2008, 10:32:32 »

ขอบคุณมากคับที่กันตอบคอบคุณค๊าบผม . . . Afro

Share topic : บันทึกการเข้า

<b>กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย</b>
กลุ่มผู้ดูแลระบบแห่งประเทศไทย
   


โปรดอ่านกฎกติกาก่อนแสดงความคิดเห็น


1. โปรดงดเว้น การใช้คำหยาบคาย ส่อเสียด ดูหมิ่น กล่าวหาให้ร้าย สร้างความแตกแยก หรือกระทบถึงสถาบันอันเป็นที่เคารพ
2. ข้อความหรือรูปภาพที่ปรากฏในกระทู้ที่ท่านเห็นอยู่นี้ เกิดจากการตั้งกระทู้และถูกส่งขึ้นเวบบอร์ดโดยอัตโนมัติจากบุคคลทั่วไปและสมาชิก
ซึ่งทีมงานกลุ่มผู้ดูแลระบบแห่งประเทศไทย มิได้มีส่วนร่วมรู้เห็น หรือพิสูจน์ข้อเท็จจริงใดๆ ทั้งสิ้น
และไม่สามารถนำไปอ้างอิงทางกฎหมายได้
3. หากท่านพบเห็นข้อความ หรือรูปภาพในกระทู้ที่ไม่เหมาะสม กรุณาแจ้งทีมงานทราบ เพื่อดำเนินการต่อไป
4. ทีมงานกลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอสงวนสิทธิ์ในการลบความคิดเห็น โดยไม่ต้องชี้แจงเหตุผลใดๆ ต่อเจ้าของความคิดเห็นนั้น

 บันทึกการเข้า
หน้า: [1]   ขึ้นบน
  เพิ่มบุ้คมาร์ค  |  พิมพ์  
+ กลุ่มผู้ดูแลระบบแห่งประเทศไทย » Developer Zone » Web Development » หัวข้อ:
|-+ อยาได้ code เกี่ยวกับการนำ upfile รูปภาพ โดย ใช้ php กับ Mysql


 
กระโดดไป:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 Thaiadmin Edition | Sitemap| SMF © 2013, Simple Machines
Thai Language by ThaiSMF. Modifications by Thailand System Administrator Group.
Valid XHTML 1.0! Valid CSS!

หน้านี้ถูกสร้างขึ้นภายในเวลา 0.114 วินาที กับ 45 คำสั่ง

Google visited last this page 1 สิงหาคม 2015, 08:37:07