พื้นฐาน Joomla

การใช้ phpMyAdmin
phpMyAdmin เป็น Web Application (เว็บแอพพลิเชั่น) ชนิดหนึ่ง ใช้งานผ่านเว็บบราวเซอร์ มีความสาม...

เทคนิค Joomla

แก้ปัญหา Update Manager
Component Update Manager เป็นคอมโพเน้นท์ที่สามารถอัพเดท Joomla ของเราให้เป็นเวอร์ชั่นล่าสุดได้...

แนะนำ Extension

Community Builder ตอนที่ 1
ก่อนจะ Review คอมโพเน้นท์ตัวนี้ ผมนั่งคิดอยู่ครึ่งวัน ว่าจะทำดีไหม เพราะฟังก์ชั่นการใช้งานนั้...
( 0 Votes )
Please input a file for uploadมาอีกแล้ว ปัญหาแปลก ๆ , ปัญหานี้เกิดขึ้นจากที่ผมพยายามอัพโหลดไฟล์ขนาด 23 เมก ผ่านทาง Media Manager ครับ แล้วอยู่ดี ๆ มันก็ขึ้นว่า Please input a file for upload พร้อมแถบเหลืองอ๋อย และก็อัพโหลดไม่สำเร็จเสียด้วย

Please input a file for upload

แปลได้ว่า กรุณาระบุไฟล์สำหรับการอัพโหลด , อ่าว ก็ใส่ไปแล้วนี่นา , ปัญหานี้มีสาเหตุมาจากการกำหนดขนาดของไฟล์ที่อนุญาตให้อัพโหลดไฟล์โดยใช้ PHP ซึ่งแน่นอนว่า Joomla นั้น ก็อาศัย PHP เป็นหลัก เมื่อมีการอัพโหลดไฟล์ที่ขนาดเกินกำหนด มันก็จะทำการห้ามไฟล์นั้นไม่ให้อัพโหลดขึ้นไป คาดว่ากระบวนการนี้ จะไปลบการอ้างอิง Path ที่จะอัพโหลดออกไปด้วยระหว่างที่ทำการอัพโหลด เมื่อกระบวนการไม่ผ่าน และไม่มี Path ที่ถูกต้อง Joomla เองก็จึงแสดงผลบอกว่า ให้ระบุไฟล์สำหรับการอัพโหลด นั่นเอง , แต่ก่อนอื่น ให้เรามากำหนดขนาดของไฟล์ที่อนุญาตให้กับ Joomla เสียก่อน

Please input a file for upload

ผมแก้ไขจาก 10 เมก เป็น 50 เมก

Please input a file for upload

แค่นี้ยังไม่พอครับ Joomla อนุญาตแล้ว แต่ PHP ยังไม่อนุญาตครับ เราต้องไปบอกกล่าวขอพื้นที่กับ PHP ก่อนครับว่า เราต้องการอัพโหลดไฟล์ขนาดใหญ่เท่าใด ให้ไปดูที่ Help > System Info > PHP Information ครับ

Please input a file for upload

จากนั้นมองหาบรรทัดที่เขียนว่า upload_max_filesize

จะเห็นว่า คอลัมน์ที่ 2 และ 3 ระบุไว้ 8M ซึ่งก็หมายถึงขนาด 8 เมกกะไบต์ โดยคอลัมน์ที่ 2 หมายถึงพื้นที่ของ Website เราเองครับ แต่เมื่อสักครู่ ผมอัพโหลดไฟล์ขนาด 23M ขึ้นไป ซึ่งมันเกินกว่าค่า PHP กำหนดไว้ ทำให้ไม่สามารถอัพโหลดได้ และเกิดข้อความนั้นขึ้นมา ส่วนคอลัมน์ที่ 3 จะเป็นค่าปกติที่โฮสได้ตั้งค่ามาไว้ ซึ่งเราไม่สามารถเปลี่ยนแปลงได้ เพราะจะมีผลโดยรวมทั้งหมด ในทุก ๆ Website ของโฮสนั้นเลย ดังนั้น หากเราต้องการค่าที่เปลี่ยนแปลงไปจากนี้ เราก็ต้องแก้ไขที่คอลัมน์ 2 ครับ แล้วจะแก้ยังไงล่ะ ?

เราต้องพึ่งพาไฟล์ที่ชื่อว่า .htaccess ครับ ไฟล์นี้จะสามารถใช้ได้บนโฮสที่เป็นระบบปฏิบัติการ Linux ซึ่งปกติแล้ว ไฟล์นี้จะไม่มี เราจำเป็นต้องสร้างขึ้นมาเองครับ โดย Copy ไฟล์ htaccess.txt ที่ Joomla มีอยู่แล้ว มาทำการ Rename ให้กลายเป็นไฟล์ .htaccess

ไม่ใช่ทำแค่การเปลี่ยนชื่อไฟล์แล้วจะใช้ได้นะครับ เราต้องระบุค่าบางอย่างลงไปในไฟล์นี้ด้วย ซึ่งก็คือ

    

php_value upload_max_filesize "50M"

ต่อท้ายไปยังไฟล์ .htaccess ครับ สำหรับตัวเลขนั้น สามารถเปลี่ยนแปลงได้ตามความเหมาะสม เมื่อได้ไฟล์ .htaccess ที่ระบุค่าเรียบร้อยแล้ว ก็ให้ทำการอัพโหลดขึ้นไปไว้ยัง Root Document ที่เดียวกับไฟล์ Joomla ครับ แล้วลองไปดู PHP Information อีกที

Please input a file for upload

จะเห็นว่า ตัวเลขเปลี่ยนเป็น 50M แล้ว แต่ค่าปกติของโฮส ยังเป็น 8M เท่าเดิม ค่าที่เปลี่ยนแปลงนี้ มีผลเฉพาะพื้นที่เราเท่านั้น

เพียงเท่านี้ การบอกกล่าวขอที่ขอทางจาก PHP ก็เรียบร้อยแล้วล่ะครับ สามารถอัพโหลดไฟล์ได้เป็นปกติ

Please input a file for upload