
สวัสดีครับ วันนี้บทความที่ผมนำมาเสนอก็จะเป็นเกี่ยวกับ เรื่องการเอาโปรแกรมและคำสั่ง PHP ต่างๆของบทความที่ผ่านๆมา นำมาประยุกต์ใช้งานทำระบบสมาชิกให้อ่านกัน
สำหรับบทความเรื่องระบบสมาชิกตัวนี้จะมีคุณสมบัติและวิธีการเขียนโปรแกรมยังไงโปรดติดตามอ่านกันเป็นตอนๆนะครับ วันนี้ผมจะเสนอเป็นตอนที่ 1 เรื่องการสร้างแบบฟอร์มสมัครสมาชิก มาเริ่มอ่านและลองทำตามกันได้เลยครับ…..
ก่อนอื่นดาวน์โหลดโค้ดโปรแกรมแบบฟอร์มสมัครสมาชิกตัวนี้ได้ที่นี่ครับ
อันดับแรก สร้างฐานข้อมูลสำหรับเก็บข้อมูลกันก่อนนะครับ โดยให้สร้างฐานข้อมูลชื่อ member
จากนั้นอันดับที่ 2 มาสร้างตารางในฐานข้อมูล member ให้ชื่อตารางว่า user มีฟิลด์เก็บข้อมูลทั้งหมด 7 ฟิลด์ เอาไว้สำหรับเก็บข้อมูลของสมาชิก รายละเอียดต่างๆดังข้างล่างนี้ครับ
|
โครงสร้างของตาราง user คือ
|
||||
|
ชื่อฟิลด์
|
ชนิด
|
ความยาว/เซต
|
Auto Key
|
Primary Key
|
|
id
|
int
|
5
|
เป็น auto increment | เป็น primary key |
|
name
|
varchar
|
30
|
||
|
email
|
varchar
|
30
|
||
|
username
|
varchar
|
20
|
||
|
password
|
varchar
|
20
|
||
|
date
|
varchar
|
25
|
||
|
status
|
varchar
|
10
|
||
|
ชื่อฟิลด์
|
รายละเอียด
|
|
id
|
ลำดับของสมาชิก
|
|
name
|
เก็บชื่อและนามสกุลของสมาชิก
|
|
email
|
เก็บอีเมล์ของสมาชิก
|
|
username
|
เก็บชื่อสำหรับเข้าระบบของสมาชิก
|
|
password
|
เก็บรหัสผ่านของสมาชิก
|
|
date
|
เก็บข้อมูลวันที่สมัครสมาชิก
|
|
status
|
กำหนดสถานะของสมาชิกว่า ACTIVE หรือ INACTIVE
|
|
คำสั่ง SQL สำหรับสร้างตาราง user
|
| CREATE TABLE `user` ( `id` int(5) NOT NULL auto_increment, `name` varchar(30) NOT NULL default ”, `email` varchar(30) NOT NULL default ”, `username` varchar(20) NOT NULL default ”, `password` varchar(20) NOT NULL default ”, `date` varchar(25) NOT NULL default ”, `status` varchar(10) NOT NULL default ”, PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; |
เมื่อสร้างฐานข้อมูลและตารางเสร็จเรียบร้อยแล้ว ก็ให้สร้างไฟล์มา 3 ไฟล์ คือ
1. ไฟล์ config.inc.php เป็นไฟล์ที่เก็บข้อมูลผู้ใช้งานฐานข้อมูลสำหรับเอาไว้ติดต่อฐานข้อมูล MySQL รวมไปถึงฟังก์ชั่นโปรแกรมต่างๆ เพื่อที่จะเอาไป include เรียกใช้งานในไฟล์อื่นๆได้สะดวกสบายมากยิ่งขึ้น
2. ไฟล์ form_register.php เป็นไฟล์ที่เราจะสร้างฟอร์มรับข้อมูลของผู้ใช้เมื่อเข้ามาสมัครสมาชิก
3. ไฟล์ confirm_register.php เป็นไฟล์สำหรับตรวจสอบข้อมูลที่ผู้ใช้งานสมัครสมาชิกเข้ามาว่ารูปแบบของข้อมูลถูกต้องหรือไม่ และเมื่อข้อมูลถูกต้องแล้วก็จะทำการบันทึกข้อมูลลงฐานข้อมูล รวมถึงส่งอีเมล์ไปแจ้งเตือนให้ผู้ดูแลระบบเข้ามาตรวจสอบข้อมูลของสมาชิกใหม่และทำการ ACTIVE สถานะ ให้สมาชิกคนนั้นๆสามารถใช้งานเข้าระบบได้
ดังรูปข้างล่างนี้ก็จะเป็นไฟล์ที่ได้จากการดาวน์โหลดโค้ดโปรแกรมตัวอย่างประกอบของบทความนี้ ไฟล์ที่เห็นอีกไฟล์คือ member.sql เป็นไฟล์คำสั่ง SQL สำหรับสร้างตารางเก็บข้อมูลสมาชิกในฐานข้อมูลนี้ครับ

มาดูไฟล์แรกกันคือไฟล์ Config.inc.php ให้เรากำหนดตั้งค่าต่างๆเกี่ยวกับฐานข้อมูล รวมถึงฟังก์ชั่นต่างๆเอาไว้ในไฟล์นี้ครับ เพื่อเอาไว้เรียกใช้งานได้สะดวกสบาย ดังรูปข้างล่าง






November 21st, 2008 at 7:52 pm
อยากได้ Code ของแต่ละไฟล์อะครับ
แต่ตอนนีโหลดไม่ได้เลย ยังไงรบกวนอับใหม่ได้มั้ยครับ
November 21st, 2008 at 9:15 pm
ต้องอภัยทีครับ พอดีอันนั้นลิงค์ไปที่หน้าเว็บตัวเก่าผมยังไม่ได้เข้าไปแก้ไข แต่ตัวโปรแกรมมีอยู่แล้วครับ อยู่ที่หน้า http://www.cmssociety.com/downloads/ ครับ ลองค้นหาดูครับ
November 25th, 2008 at 2:15 pm
พอดีผมลองทำดูแล้วไม่สามารถเก็บลงในฐานข้อมูลได้อ่ะครับ พอผมพิมข้อมูลทั้งหมดลงไปจนครบหมดแล้ว จากนั่นก็กดปุ่ม Submit จากนั่นมันก็บอกว่าคุณกรอกข้อมูลไม่ครบ (ทั้งๆที่ผมกรอกครบแล้ว ไม่ทราบว่าผมต้องไปแก้ตรงไหนหรือว่าต้องเขียนอะไรเพิ่มเติมครับ
November 25th, 2008 at 6:09 pm
สวัสดีครับ อันนี้ตั้งค่าติดต่อฐานข้อมูลถูกต้องแล้วใช่มั้ยครับ ถ้าถูกแล้ว ก็ให้มาดูที่เรื่อง รับส่งค่าตัวแปรว่าถูกต้องหรือไม่ ถ้าตรงนี้ถูกแล้ว ให้ไปเช็คค่า register_globals ของ php.ini ครับ ว่า On หรือว่า Off อยู่ครับ ลองเช็คดูตรงนี้ก่อนนะครับ แล้วกลับมาบอกอีกครั้ง ผมจะเข้ามาตอบให้อีกครับ
พงษ์ศักดิ์
November 25th, 2008 at 8:16 pm
ติดต่อกับฐานข้อมูลแล้วครับ ตัวแปรก็เขียนตามหมดแล้วครับผมถูกต้องหมด พอดีผมใช่ appserv อ่ะครับเข้าไปใน php6 แต่หาไม่เจอว่ามันอยู่ตรงไหนอ่ะครับ รบกวนช่วยบอกด้วยครับ ขอบคุณมากครับ
November 25th, 2008 at 8:20 pm
อ่อเห็นแล้วครับ register_globals ของ php.ini on อยู่ครับ
November 26th, 2008 at 2:10 pm
WEBMASTER หายไปไหนแล้วครับมี msn มั้ยครับ ผมจะได้ add คุยได้เพราะผมต้องเขียนเว็ปด่วนนะครับ รบรวนด้วยครับ
March 25th, 2009 at 7:46 pm
น้ำมันมะพร้าว http://www.coconut-virgin.com/home.html
April 6th, 2009 at 3:08 pm
ของผมมันเขียนบอกว่ากรอกข้อมูลไม่ครบทุกครั้งเลย อ่ะครับ แก้ไงดีอ่า
June 5th, 2009 at 3:13 pm
พี่ค่ะ ของหนูมันบันทึกลงฐานข้อมูลนะค่ะ แต่ว่ามันส่งกลับหาผู้ดูแลระบบไม่ได้นะค่ะ
มันฟ้องว่า
Warning: mail() [function.mail]: Failed to connect to mailserver at “localhost” port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in C:\AppServ\www\member_form_register\confirm_register.php on line 100
ส่งเมล์แจ้งข้อมูลถึงผู้ดูแลระบบไม่ได้
แบบนี้นะค่ะ
รบกวนบอกหน่อยนะค่ะ ขอบคุณค่ะ
June 5th, 2009 at 3:23 pm
อันนี้เป็นการติดตั้งในเครื่องครับ ที่ Error ขึ้นแบบนั้นเป็นเพราะว่าเครื่องไม่มี Mail Server ครับ
ถ้าหามาติดก็ไม่มี Error ขึ้นมาครับ
ถ้าเป็นแค่การทดสอบบนเครื่องเฉย ขึ้น Error แบบนี้ก็ถือว่าปกติครับ
ลองเอาไปติดตั้งจริงบนโฮสติ้งดูครับ อาการแบบนี้จะไม่เกิด จะเกิดก็ต่อเมื่อเครื่อง Server ตัวนั้นไม่มี Mail Server อยู่ครับ
หรือจะลองติดตั้ง Mail Server ดูเองก็ได้ อาจจะ Config ยากนิดนึง ลองดูครับ มีบทความอยู่ในเว็บนี้แล้วอยู่ที่ http://www.cmssociety.com/2008/08/17/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%95%E0%B8%B4%E0%B8%94%E0%B8%95%E0%B8%B1%E0%B9%89%E0%B8%87-mail-server/
Webmaster
June 5th, 2009 at 3:28 pm
ขอบมากมายเลยค่ะ
June 5th, 2009 at 3:34 pm
พี่ ค่ะ ถ้าหนูจะทำ webboard แต่จะให้มีการสมัครสมาชิกก่อน ถึงจะโพ้สได้
นู๋ต้องเอาสมัครสมาชิก กับ webbaoard มารวมกันหรอค่ะ ช่วยแนะนำหนูหน่อยนค่ะ
ขอบคุณค่ะ
June 5th, 2009 at 3:40 pm
ใช่ครับ เอาระบบสมาชิก+เว็บบอร์ด แล้วก็หลายๆอย่างประกอบกันครับ
ไล่ศึกษาวิธีการต่างๆในเว็บนี้ดูครับ ลองฝึกทำหลายๆตัว จับมันมาประยุกต์ร่วมกันดู
ค่อยปรับไปเรื่อยๆ จากฟังก์ชั่นธรรมดาก็ค่อยเพิ่ม option ไปเรื่อยๆ
June 6th, 2009 at 10:53 am
พี่ webmaster ค่ะ รบกวนถามไรหน่อยนะค่ะ
คือว่า ต้องทำยังไงหรอค่ะ อีเมล์ถึงจะส่งแจ้งเข้ามาที่เมลนู๋นะค่ะ เวลามีสมาชิกมาสมัครนะค่ะ
July 28th, 2009 at 12:01 pm
โหลด โค้ดไม่ได้อะ
July 31st, 2009 at 2:35 pm
สามารถค้นหาโค้ดได้ที่หน้า ดาวน์โหลดนี้ครับ http://www.cmssociety.com/downloads/
ขอบคุณครับ
October 26th, 2009 at 9:44 pm
Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for sf-jn-th@hotmail.com in C:\AppServ\www\php\confirm_register.php on line 100
ส่งเมล์แจ้งข้อมูลถึงผู้ดูแลระบบไม่ได้
มันแก้ไงอะครับๆ ทำ Mail Server
October 26th, 2009 at 9:51 pm
สำหรับไครที่ขึ้น แบบผม นะครับ ผมหาวิธีมาให้แล้ว
ปัญหา: ไม่สามารถส่ง mail ใน PHP
มีสาวน่ารัก มาปรึกษาว่าทำไมส่ง mail ด้วย function mail ไม่ได้ (ตั้งนานแล้วเพิ่งจะ update)
ก็เลยเอามาลองที่เครื่อง ปรากฎว่าขึ้น error เป็น
“Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for …”
วิธีแก้ก็คือ
1. เปิด Control Panel เลือก Administrative Tools
2. เลืิอก Internet Information Services
3. เลือก [Local computer]
4. click ขวา ที่ Default SMTP Virtual Server เลือก Properties
5. เลือก tab Access
6. ที่ Relay Restrictions, click ที่ Relay แล้ว click Add
7. เลือก Single Computer แล้วใส่ IP address เป็น 127.0.0.1
ขอบคุณครับ
October 26th, 2009 at 9:52 pm
Credit ไครมะรู้ Copy มาแค่นี้ ขอโทดด้วยครับ