โปรแกรมแจ้งซ้อมอยากให้รูปที่อัพโหลดแสดงหน้ารายการ

แล้วได้เอาออกมาแสดงหรือเปล่าครับ จะต้องเขียนเพื่อแสดงรูปด้วยตัวเองครับ ในฟังก์ชั่น onRow (ใน View) รวมถึง query ชื่อไฟล์ที่จัดเก็บส่งให้ตารางด้วย (ใน Model)
ผมเพิ่ม onRow ให้แสดงภาพแล้วครับ แต่หน้าเพิ่มใบรับงานไม่ยอมบันทึกรูปภาพให้ครับต้องเอาภาพไปใส่ใน Folder เองถึงจะแสดง
รูปภาพหน้า View
// picture
if (is_file(ROOT_PATH.DATA_FOLDER.'picture/'.$index->id.'.jpg')) {
$img = WEB_URL.DATA_FOLDER.'picture/'.$index->id.'.jpg?'.time();
} else {
$img = WEB_URL.'skin/img/noicon.png';
}
$fieldset->add('file', array(
'id' => 'picture',
'labelClass' => 'g-input icon-upload',
'itemClass' => 'item',
'label' => 'รูปภาพ',
'comment' => 'Browse image uploaded, type jpg, jpeg (resized automatically)',
'dataPreview' => 'imgPicture',
'previewSrc' => $img,
'accept' => self::$cfg->inventory_img_typies
));
รูปภาพหน้า Model ครับผมต้องแก้ตรงใหนเพื่อให้เชฟรูปเพื่อนำมาแสดงได้ครับ
// อัปโหลดไฟล์
$dir = ROOT_PATH.DATA_FOLDER.'picture/';
foreach ($request->getUploadedFiles() as $item => $file) {
/* @var $file \Kotchasan\Http\UploadedFile */
if ($item == 'picture') {
if ($file->hasUploadFile()) {
if (!File::makeDirectory($dir)) {
// ไดเรคทอรี่ไม่สามารถสร้างได้
$ret['ret_'.$item] = Language::replace('Directory %s cannot be created or is read-only.', DATA_FOLDER.'picture/');
} else {
try {
$file->resizeImage(self::$cfg->inventory_img_typies, $dir, $save['id'].'.jpg', self::$cfg->inventory_w);
} catch (\Exception $exc) {
// ไม่สามารถอัปโหลดได้
$ret['ret_'.$item] = Language::get($exc->getMessage());
}
}
} elseif ($file->hasError()) {
// ข้อผิดพลาดการอัปโหลด
$ret['ret_'.$item] = Language::get($file->getErrorMessage());
}
}
}
ไม่ค่อยเข้าใจเท่าไรครับ แต่ทั้งหมดทั้งมวล เราต้องจัดการนำมาแสดงผลด้วยตัวเองเท่านั้นครับ
ครับอาจารย์คือความหมายผมแค่ไม่สามารเชฟไฟล์รูปภาพไปยังที่กำหนดไม่ได้ เลยไม่รู้ว่าตั้งค่าตรงใหนผิดครับ
foreach ($request->getUploadedFiles() as $item => $file) {
ลอง print_r $item และ $file ดูว่ามีอะไรส่งมา ปกติมันจขะเป้นข้อมูลไฟล์ที่ส่งมา ลองรับค่าดูให้ถูก สามารถดูผลลัพทได้ที่ console ของ browser
ลอง print_r $item และ $file ดูว่ามีอะไรส่งมา ปกติมันจขะเป้นข้อมูลไฟล์ที่ส่งมา ลองรับค่าดูให้ถูก สามารถดูผลลัพทได้ที่ console ของ browser
