โปรแกรมแจ้งซ้อมอยากให้รูปที่อัพโหลดแสดงหน้ารายการ
ผมเพิ่มฟรอมอัพโหลดรูปภาพหน้า รับงานแล้วสามารถบันทึกได้แต่รูปภาพไม่แสดงที่หน้า รายการแจ้งซ่อม รบกวนอาจารย์ช่วยแนะนำด้วยครับ
กรกฎ วิริยะ 04 เม.ย. 2567 08:02
แล้วได้เอาออกมาแสดงหรือเปล่าครับ จะต้องเขียนเพื่อแสดงรูปด้วยตัวเองครับ ในฟังก์ชั่น onRow (ใน View) รวมถึง query ชื่อไฟล์ที่จัดเก็บส่งให้ตารางด้วย (ใน Model)
สราวุฒิ อินทโร 08 เม.ย. 2567 16:18
ผมเพิ่ม 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());
}
}
}
กรกฎ วิริยะ 10 เม.ย. 2567 20:41
ไม่ค่อยเข้าใจเท่าไรครับ แต่ทั้งหมดทั้งมวล เราต้องจัดการนำมาแสดงผลด้วยตัวเองเท่านั้นครับ
สราวุฒิ อินทโร 11 เม.ย. 2567 18:37
ครับอาจารย์คือความหมายผมแค่ไม่สามารเชฟไฟล์รูปภาพไปยังที่กำหนดไม่ได้ เลยไม่รู้ว่าตั้งค่าตรงใหนผิดครับ
กรกฎ วิริยะ 15 เม.ย. 2567 21:31
foreach ($request->getUploadedFiles() as $item => $file) {
ลอง print_r $item และ $file ดูว่ามีอะไรส่งมา ปกติมันจขะเป้นข้อมูลไฟล์ที่ส่งมา ลองรับค่าดูให้ถูก สามารถดูผลลัพทได้ที่ console ของ browser

โพสต์ตอบกลับ

กรุณาตรวจสอบให้ถูกต้องก่อนส่ง สามารถใช้ BBCode ได้
ประเภท jpg, jpeg, png, webp อัปโหลดรูปภาพหรือไม่ก็ได้