ใช้คำสั่ง copy แล้วแต่ไม่ไปเก็บให้ตาม path
ตัวอย่างนะคับ
copy($fileupload[tmp_name], "images\filename.pdf");
ปัญหา
ซึ่งมัน copy ได้นะคับและชื่อไฟล์จะเป็น "images\filename.pdf" อย่างนี้เลย
และจะอยู่ใน dir เดียวกันกับ file คำสั่ง
ความต้องการ
ซึ่งจริง ๆ ผมต้องการให้ไปไว้ข้างในห้อง images/7/ และชื่อไฟล์ filename.pdf
ลองเปลี่ยนจาก \ มาเป็น / หรือ // ก้อไม่ได้มันฟ้อง error
ปล. ก่อนหน้าผมได้สร้าง dir ไว้แล้วคือห้อง 7
copy($fileupload[tmp_name], "images\filename.pdf");
ปัญหา
ซึ่งมัน copy ได้นะคับและชื่อไฟล์จะเป็น "images\filename.pdf" อย่างนี้เลย
และจะอยู่ใน dir เดียวกันกับ file คำสั่ง
ความต้องการ
ซึ่งจริง ๆ ผมต้องการให้ไปไว้ข้างในห้อง images/7/ และชื่อไฟล์ filename.pdf
ลองเปลี่ยนจาก \ มาเป็น / หรือ // ก้อไม่ได้มันฟ้อง error
ปล. ก่อนหน้าผมได้สร้าง dir ไว้แล้วคือห้อง 7
if(copy($_FILES["inputThumbnailPicture"]["tmp_name"],$Path_ThumbnailPicture."/".$ThumbnailPictureName)) {
chmod($Path_ThumbnailPicture."/".$ThumbnailPictureName,0777);
}
ต้องดู path ดีๆ นะครับ
คือในการสร้าง dir พอเช็ค owner เป็น apache มันเลย copy ไม่ได้
แต่อีก dir ที่เป็น owner root มันได้
คำถามครับ
เวลาที่เราใช้คำสั่ง copy แล้วให้ owner เป็น root ทำไงครับ
หรือ set user apache ให้มีสิทธิ์ก้อได้คับ
ตอนนี้ผมใช้
chown($path, $user_name);
แต่ไม่ได้
windows หรือ linux ครับ
ถ้า windows ลองใช้ \ ครับ
ถ้า linux ใช้ / ครับ
ส่วนอัปโหลดไม่ผ่าน ก็มีหลายกรณี ที่พบบ่อยๆก็คือ
1.ตามบทความเกี่ยวกับ ไฟล์และไดเร็คทอรี่เลยครับ ถ้าหากไดเร็คทอรี่ที่เก็บไฟล์ถูกสร้างบน server แล้ว สามารถอัปโหลดผ่าน PHP ได้แน่นอน
2.path ไม่ถูกต้อง อันนี้การกำหนด path ปลายทาง ต้องกำหนดนับจากไฟล์ที่มำการอัปโหลดครัับ ไม่ว่าจะอยู่ที่ใด (ผมหมายถึงฟล์ที่ฟอร์ม post ไปนะครับ)
การทดสอบว่าไดเร็คทอรี่จะอัปโหลดได้มั้ย ก็ให้ลองสร้าวงไฟล์ในไดเร็คทอรี่นั้นๆครับ เช่น
<?php
mkdir('test/'); // สร้างไดเร็คทอรี่ในโฟลเดอร์เดียวกันกับโฟลเดอร์ที่ไฟล์นี้อยู่
$f = fopen('test/index.php','w'); // สร้างไฟล์ในโฟลเดอร์ใหม่
fclose($f);
unlink('test/index.php'); //ลบไฟล์
rmdir('test/'); //ลบไดเร็คทอรี่
?>
ขั้นตอนไหนไม่ต้องการให้ลบออกนะครับ ถ้าไม่พบ error ใดๆเลย แสดงว่าตั้งแต่โฟลเดอร์ที่ไฟล์นี้อยู่ไปจนถึงโฟลเดอร์ที่สร้างใหม่สามารถเขียนได้ทั้งหมดครับ
คือถ้าสร้างจาก php --- owner จะเป็น apache
แต่ถ้าสร้างจากโปรแกรม ftp --- owner จะเป็น root
ซึ่งถ้าตัวไหนที่สร้างจาก ftp จะได้ copy ได้แต่ถ้า folder นั้นสร้างจาก php จะ copy ไม่ได้
ตอนนี้ผมลอง chown มันไม่ได้ กะว่าจะเปลี่ยนจาก apache มาเป็น root