อ้างอิงจากต้นฉบับเลยนะครับ
พอดีว่างจัด ก็เลยทำม๊อดอัพโหลดรูปเลียนแบบเว็บนี้ครับ
ขอเ้อาไปปล่อยเว็บอื่นด้วยนะครับ (แล้วจะลิงค์กลับมา :P) เดี๋ยวคนที่เว็บนั้นจะน้อยใจเอา
ก่อนอื่นก็ต้องโหลดตัวโปรแกรมอัพโหลดรูปก่อนครับ
http://dt.in.th/src/imageupload.tar.gzแตกไฟล์ออกมา แล้วอัพไปไว้ในโฟลเดอร์ไหนก็ได้ครับ
ต่อไป ไปยังโฟลเดอร์ธีมของ SMF ครับ
เลือกธีมที่ใช้อยู่ หาไฟล์
Post.template.phpถ้าหาไม่เจอ ก็ให้ไปหาในธีม Default แทนครับ
เจอแล้วใช่ไหมครับ...
เก่งมากครับ เปิดขึ้นมาแก้เลย
หาโค้ดนี้ครับ
// Finally, the submit buttons.
echo '
<tr>
แล้วใส่โค้ดนี้ก่อนหน้าโค้ดที่หาเจอครับ
// Upload Image
echo '
<tr>
<td></td>
<td><iframe src="UPLOADURL" width="550" height="60" frameborder="0"></iframe></td>
</tr>';
แก้ตรงคำว่า UPLOADURL ไปยังหน้าอัพโหลดที่อัพขึ้นไปครับ
1. โหลด script ไปก่อน
Download พอดีต้นฉบับมันหายไปแล้ว ผมเอาไฟล์ไปยำมานิดหน่อย ไม่รู้มีปัญหาอะไรมั้ย แต่ไล่โค้ดแล้วน่าจะไม่มีปัญหาครับ
2. วางแผนก่อน ว่าจะเอาไฟล์ที่อัพโหลดไปเก็บที่ไหนบนเซิร์ฟ อ่ะ สมมุติเป็น
http://www.f0nt.com/forum/ ก็แตกไฟล์ข้อ 1 ไปใส่ในนั้นเลย จากนั้นทำการ CHMOD 777 ให้กับโฟลเดอร์ต่อไปนี้
2.1
http://www.f0nt.com/forum/upload/files/ 2.2
http://www.f0nt.com/forum/upload/files/images/ 2.3
http://www.f0nt.com/forum/upload/files/thumb/images/ 2.4
http://www.f0nt.com/forum/upload/files/flash/3. เปิดไฟล์
http://www.f0nt.com/forum/upload/image_uploader.php ขึ้นมา (ใช้ notepad ก็ได้) บรรทัดที่ 5-7 มี config อยู่...
$maxsize = 500 * 1024; // ขนาด แก้ตรง 500 เป็นตัวอื่น ตอนนี้เป็น 500KB/รูป
$baseurl = 'http://www.f0nt.com/forum/upload/files/'; //url ไปโฟลเดอร์ที่เก็บรูป อย่าลืมปิดท้ายด้วย /
$basedir = 'files/'; // สอดคล้องกับโฟลเดอร์ในสุดของ baseurl ด้านบน
แก้ให้เหมาะสมตามเครื่องเราซะ
$basedir ถ้ากลัวงง ไม่แนะนำให้แก้ ถ้าอยากแก้...
$basedir จะอ้างอิงที่อยู่จากไฟล์ image_upload.php ไปยังโฟลเดอร์เก็บไฟล์ (โฟลเดอร์ที่ด้านในมีโฟลเดอร์ images, thumb, flash) ถ้าเราย้ายไฟล์ image_upload.php ไปไว้ที่อื่น ก็ต้องแก้ $basedir ตามด้วย แต่ถ้าแตกไฟล์จาก zip แล้วอัพขึ้นเซิร์ฟโดยไม่ได้ย้าย หรือเปลี่ยนชื่อโฟลเดอร์ ก็ไม่เป็นไร
4. ลองเข้าไปที่
http://www.f0nt.com/forum/upload/image_upload.php แล้วอัพไฟล์ดู ถ้าอัพไม่ได้...
4.1 เช็คให้แน่ใจว่าทำ CHMOD 777 ครบหมดทุกโฟลเดอร์แล้ว
4.2 เช็คให้แน่ใจว่า $basedir ถูกต้อง
5. ถ้าอัพสำเร็จแล้ว ต่อไปเอามาไปฝังในหน้าตอบกระทู้ ... จากโฟลเดอร์ของ smf ให้เปิดไปที่ /Themes/default/Post.template.php (แบ็คอัพก่อนเผื่อความปลอดภัย)
หาโค้ดนี้ครับ
// Finally, the submit buttons.
echo '
<tr>
แล้วใส่โค้ดนี้
ก่อนหน้าโค้ดที่หาเจอครับ
// Upload Image
echo '
<tr>
<td></td>
<td><iframe src="
UPLOADURL" width="550" height="60" frameborder="0"></iframe></td>
</tr>';
ตรง
UPLOADURL คือ url ที่มาจากข้อ 3 ด้านบนนะครับ
--
เสร็จแล้วว