ถามเรื่องการสร้างโฟเดอร์ด้วย php ด้วยครับ อยากถามท่านกรกฏครับว่าพอแนะนำได้ไหมครับ คือแบบนี้ผมสร้างระบบลงทะเบียนครับ เมื่อกด submit อยากให้ระบบมันสร้างโฟอเดอร์ของ User ครับ เพื่อกำหนดเป็น Subdomain พอมีสคริ๊ปตัวอย่างให้ไหมครับว่า php มันสร้างโฟอเดรอืได้อย่างๆไร รบกวนขอละเอียดด้วยนะครับ มือใหม่
ขอบพระคุณมากครับ
ขอบพระคุณมากครับ
ครับพอดีไปเห็นบทความมาพอดีครับ
<?php
// แยกเอาชื่อ subdomain ออกมา
$subdomain = preg_replace( '/(.*?)[\.]?localhost\.com/isu' , '' , $_SERVER[HTTP_HOST] );
<?php
// แยกเอาชื่อ subdomain ออกมา
$subdomain = preg_replace( '/(.*?)[\.]?localhost\.com/isu' , '' , $_SERVER[HTTP_HOST] );
// ถ้าไม่ได้กำหนด subdomain มาให้เป็น www
// เช่น http://localhost.com
$subdomain = ( $subdomain == '' ) ? 'www' : $subdomain;
//แสดงผล subdomain ที่เรียก
echo "subdomain=$subdomain";
// เรียกไปยังไดเร็คทอรี่ชื่อ subdomain
// เช่น www ให้เรียกใช้ไฟล์ www/index.php
include( "$subdomain/index.php" );
?>
ขอสอบถามเลยละกันนะครับจากโค๊ดนี้ $subdomain = preg_replace( '/(.*?)[\.]?localhost\.com/isu' , '' , $_SERVER[HTTP_HOST] );
ตัวนี้ /isu คือชื่อของโฟเดอร์หรืออะไรเหรอครับ งง
isu เป็น flag ของ preg_replace ครับ ไม่เกี่ยวกับสิ่งที่ถาม
การสร้างโฟลเดอร์ด้วย PHP ใช้ฟังก์ชั่น
bool mkdir ( string $pathname [, int $mode [, bool $recursive [, resource $context ]]] )
ครับ
$pathname คือชื่อโฟลเดอร์รวม path ที่ต้องการครับ
การสร้างโฟลเดอร์ด้วย PHP ใช้ฟังก์ชั่น
bool mkdir ( string $pathname [, int $mode [, bool $recursive [, resource $context ]]] )
ครับ
$pathname คือชื่อโฟลเดอร์รวม path ที่ต้องการครับ
ขอบคุณมากเลยนะครับ ผมขอละเอียดกว่านี้ได้ไหมครับผมมือใหม่ครัย ยังไม่เข้าใจเท่าไหร่ครับ หรือถ้าไม่เป็นการรบกวนพี่มากนักขอโค๊ด ค่าส่ง และ ค่ารับ ในการสร้างด้วยครับ ขอบคุณมากครับ
โค้ดมีแค่เท่าที่เห็นครับ ในตัวอย่างเป็นการแยกออกมาว่า เราจะรู้ได้ไงว่า subdomain ไหนเป็นคนเรียกมา ส่วนการใช้งานจริง จะซับซ้อนกว่านี้หลายเท่าครับ ต้องอ่านหลายๆบทความประกอบกัน รวมถึงต้องประยุกต์ใช้ด้วยครับ เช่น
1.ต้องศึกษาว่า จะสร้าง dynamic subdomain บน host จริงๆ ได้อย่างไร
2.ต้องศึกษาการใช้งาน mod_rewrite
3.สร้างโฟลเดอร์ของ user
4.จะรู้ได้ไงว่าเป็น subdomain ไหนเรียกมา
5.จะเอาไปใช้ได้ยังไง
ทั้งหมดคงต้องอาศัยการทำความเข้าใจประกอบกัน มันถึงจะทำงานได้ครับ ถ้าเป็นมือใหม่ มันอาจจะยากไปครับ ดังนั้น มีทางเดียวคือ ต้องหมั่นศึกษาให้เป็น มือเก่ากว่านี้สักหน่อย
สำหรับการหาความรู้ในสิ่งต่างๆ ข้างต้น สามารถหาได้จากเว็บผมนี้แหละครับ มีคำตอบให้ทั้งหมดทุกข้อ เพียงแต่ว่ามันอาจไม่ใช่คำตอบเป็นการเขียนโค้ดให้ แต่จะเป็นในแง่การทำความเข้าใจมากกว่า เนื่องจากมันไม่ได้ใช้งานแค่โค้ด เพียงอย่างเดียวครับ
1.ต้องศึกษาว่า จะสร้าง dynamic subdomain บน host จริงๆ ได้อย่างไร
2.ต้องศึกษาการใช้งาน mod_rewrite
3.สร้างโฟลเดอร์ของ user
4.จะรู้ได้ไงว่าเป็น subdomain ไหนเรียกมา
5.จะเอาไปใช้ได้ยังไง
ทั้งหมดคงต้องอาศัยการทำความเข้าใจประกอบกัน มันถึงจะทำงานได้ครับ ถ้าเป็นมือใหม่ มันอาจจะยากไปครับ ดังนั้น มีทางเดียวคือ ต้องหมั่นศึกษาให้เป็น มือเก่ากว่านี้สักหน่อย
สำหรับการหาความรู้ในสิ่งต่างๆ ข้างต้น สามารถหาได้จากเว็บผมนี้แหละครับ มีคำตอบให้ทั้งหมดทุกข้อ เพียงแต่ว่ามันอาจไม่ใช่คำตอบเป็นการเขียนโค้ดให้ แต่จะเป็นในแง่การทำความเข้าใจมากกว่า เนื่องจากมันไม่ได้ใช้งานแค่โค้ด เพียงอย่างเดียวครับ
ยังไงต้องขอขอบคุณมากเลยครับที่กรุณาตอบคำถามผม ผมมีคำถามอีกครับว่า เช่นURL www.sample.com/ index.php?user=abcde ผมใช้ htaccess ในการติดให้เป็นโฟลเดอร์แบบนี้ได้ไหมครับเป็น www.sample.com/abcd/ เลยครับ แล้วก็เรียกเป็น sub domain แทนแบบนี้ได้ไหมครับ
ได้ครับ ไม่มีปัญหา สามารถใช้ mod_rewrite ได้ วิธีการไม่ยุ่งยาก แต่มันอาจจะยากอีตรงที่ เราจะไม่สามารถมีโฟลเดอร์ชื่อเดียวกันกับ url ที่เรียกได้ รวมถึง หากทำการเรียกไปยัง path อื่นๆ ที่มีอยู่จริง อาจจะผิดพลาดได้เช่น
http://xxx.com/member/index.php
อาจเป็น path จริงๆ แต่ mod_rewrite อาจมองเห็นเป็น user ที่ชื่อ member ก็ได้
http:/xxx.com/index.php?user=member
แต่วิธีการนี้ก็เป็นวิธีที่ง่ายสุดแล้วครับ แล้วก็ยุ่งยากน้อยที่สุดครับ ต้องลองทำดูครับ
http://xxx.com/member/index.php
อาจเป็น path จริงๆ แต่ mod_rewrite อาจมองเห็นเป็น user ที่ชื่อ member ก็ได้
http:/xxx.com/index.php?user=member
แต่วิธีการนี้ก็เป็นวิธีที่ง่ายสุดแล้วครับ แล้วก็ยุ่งยากน้อยที่สุดครับ ต้องลองทำดูครับ
ครับ แล้วเราต้องไป config ที่ตัว Apache ด้วยใช่ไหมครับ httpd.conf เปิด Services ของ mod_rewrite ใช่ไหมครับ จากที่พี่ได้ตอบว่า http://xxx.com/member/index.php นะครับ ผมใช้ .htaccess ตัดเลยแล้วเรียกแบบนี้ได้ไหม http://member.xxx.com/ ได้เลยไหมครับ. แล้วมัน host เราจะรู้จ้ักใช่ไหมครับ หรือมีตัวอย่าง htaccess code ให้เป็นตัวอย่างไหมครับ.
http://member.xxx.com/ แบบนี้เป็น sub domain ค้อง set ทั้งที่ apache และ โค้ดครับ ส่วน http://xxx.com/member/ สามารถใช้ได้เลยครับ ไม่ต้อง config อะไรเพิ่มเติม
ส่วน .htaccess นั้นมันคนละเรื่องกันครับ ให้ลองทดสอบดูว่าใช้ได้หรือไม่ ถ้าใช้ไม่ได้ก็ให้เข้าไปเปิดใช้ที่ httpd.config นั่นแหละครับ
บทความต่างๆที่เกี่ยวข้องมีอยู่บนเว็บครับ ลองหาอ่านดูครับ โดยอ่านจากหลายๆบทความประกอบกันครับ
ส่วน .htaccess นั้นมันคนละเรื่องกันครับ ให้ลองทดสอบดูว่าใช้ได้หรือไม่ ถ้าใช้ไม่ได้ก็ให้เข้าไปเปิดใช้ที่ httpd.config นั่นแหละครับ
บทความต่างๆที่เกี่ยวข้องมีอยู่บนเว็บครับ ลองหาอ่านดูครับ โดยอ่านจากหลายๆบทความประกอบกันครับ
Ok ครับขอบพระคุณมากครับ.