ผลต่างระหว่างรุ่นของ "คู่มือการพัฒนาซอฟต์แวร์บนเว็บบราวซ์เซอร์ให้รองรับ UA ด้วยภาษา PHP"
ไปยังการนำทาง
ไปยังการค้นหา
Photchanan (คุย | ส่วนร่วม) ไม่มีความย่อการแก้ไข |
Photchanan (คุย | ส่วนร่วม) ไม่มีความย่อการแก้ไข |
||
| บรรทัดที่ 6: | บรรทัดที่ 6: | ||
<!--T:1--> | <!--T:1--> | ||
<!-- | |||
User/Pass สำหรับเข้าเซิร์ฟเวอร์ใน workshop [[https://คน.ไทย/วิกิ/list-user-ws.jpg User]] | User/Pass สำหรับเข้าเซิร์ฟเวอร์ใน workshop [[https://คน.ไทย/วิกิ/list-user-ws.jpg User]] | ||
# HOST: https://ws.kon.in.th | # HOST: https://ws.kon.in.th | ||
| บรรทัดที่ 11: | บรรทัดที่ 13: | ||
# user: userX | # user: userX | ||
# pass: eaiuserX | # pass: eaiuserX | ||
--> | |||
== Preparing to Support UA in PHP == <!--T:2--> | == Preparing to Support UA in PHP == <!--T:2--> | ||
| บรรทัดที่ 58: | บรรทัดที่ 62: | ||
=== [[แก้ไขให้ระบบลงทะเบียนตรวจสอบอีเมล EAI ได้]] === <!--T:11--> | === [[แก้ไขให้ระบบลงทะเบียนตรวจสอบอีเมล EAI ได้]] === <!--T:11--> | ||
แก้ไขไฟล์ register.php จาก | แก้ไขไฟล์ register.php จาก | ||
''' | '''if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { | ||
'''
exit('Email is not valid!');
| '''
exit('Email is not valid!');
| ||
''' } | ''' } | ||
| บรรทัดที่ 64: | บรรทัดที่ 68: | ||
<!--T:12--> | <!--T:12--> | ||
เป็น | เป็น | ||
''' | ''' if (preg_match('/^[ก-๙a-zA-Z0-9_+&*-]+(?:\.[ก-๙a-zA-Z0-9_+&*-]+)*@(?:[ก-๙a-zA-Z0-9-]+\.)+[ก-๙a-zA-Z]{2,16}$/u', $_POST['email']) == 0) { | ||
''' exit('Email is not valid!');
| ''' exit('Email is not valid!');
| ||
''' } | ''' } | ||
| บรรทัดที่ 70: | บรรทัดที่ 74: | ||
=== [[แก้ไขให้ระบบลงทะเบียนสามารถส่งอีเมล EAI ได้ด้วย PHPMailer]] === <!--T:13--> | === [[แก้ไขให้ระบบลงทะเบียนสามารถส่งอีเมล EAI ได้ด้วย PHPMailer]] === <!--T:13--> | ||
แก้ไขไฟล์ PHPMailer/src/PHPMailer.php จาก | แก้ไขไฟล์ PHPMailer/src/PHPMailer.php จาก | ||
''' | ''' case 'php': | ||
''' default: | ''' default: | ||
''' return filter_var($address, FILTER_VALIDATE_EMAIL) !== false; | ''' return filter_var($address, FILTER_VALIDATE_EMAIL) !== false; | ||
| บรรทัดที่ 76: | บรรทัดที่ 80: | ||
<!--T:14--> | <!--T:14--> | ||
เป็น | เป็น | ||
''' | ''' case 'php': | ||
''' default: | ''' default: | ||
''' return (bool) preg_match("/^[ก-๙a-zA-Z0-9_+&*-]+(?:\.[ก-๙a-zA-Z0-9_+&*-]+)*@(?:[ก-๙a-zA-Z0-9-]+\.)+[ก-๙a-zA-Z]{2,16}$/u", $address); | ''' return (bool) preg_match("/^[ก-๙a-zA-Z0-9_+&*-]+(?:\.[ก-๙a-zA-Z0-9_+&*-]+)*@(?:[ก-๙a-zA-Z0-9-]+\.)+[ก-๙a-zA-Z]{2,16}$/u", $address); | ||
<!--T:15--> | <!--T:15--> | ||
Regular expression ข้างต้นสามารถใช้ตรวจสอบรูปแบบ email ภาษาไทยได้ หากต้องการตรวจสอบ email ภาษาอื่นๆอาจต้องพิจารณาใช้ regular expression รูปแบบอื่นที่ไม่เจาะจง เช่น | |||
* something@something ^(.+)@(.+)$ | |||
[[Category: EAI]] | [[Category: EAI]] | ||
</translate> | </translate> | ||
รุ่นแก้ไขเมื่อ 02:18, 3 สิงหาคม 2564
<languages/> <translate> คู่มือนี้ได้จัดทำขึ้นมาเพื่อใช้เป็นแนวทางในการพัฒนาซอฟต์แวร์บนเว็บบราวซ์เซอร์เพื่อให้รองรับโดเมนภาษาไทย (IDN) และอีเมลภาษาไทย (EAI) โดยใช้ภาษา PHP
Preparing to Support UA in PHP
ระบบที่ใช้ในการพัฒนา
- ระบบฐานข้อมูล
- MySQL
- PHPMyAdmin
- ระบบบนเว็บบราวซ์เซอร์
- ระบบลงทะเบียน (Registration)
- ระบบ Login
- ระบบแสดงผล Profile
- ระบบส่งอีเมล
- PHPMailer
Software ที่ใช้ในการพัฒนา
- Filezilla [Win] [Mac]
- Web Browser เช่น Firefox, Chrome, Safari
- Text Editor (Code Editor) เช่น Notepad, Atom
Application Architecture
Developing Applications to Support UA in PHP
CREATE TABLE IF NOT EXISTS accounts ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `password` varchar(255) NOT NULL, `email` varchar(100) NOT NULL, `activation_code` varchar(50) DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
แก้ไขไฟล์ register.html จาก
<input type="email" name="email" placeholder="Email" id="email" required>
เป็น
<input type="text" name="email" placeholder="Email" id="email" required>
แก้ไขไฟล์ register.php จาก
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
exit('Email is not valid!');
}
เป็น
if (preg_match('/^[ก-๙a-zA-Z0-9_+&*-]+(?:\.[ก-๙a-zA-Z0-9_+&*-]+)*@(?:[ก-๙a-zA-Z0-9-]+\.)+[ก-๙a-zA-Z]{2,16}$/u', $_POST['email']) == 0) {
exit('Email is not valid!');
}
แก้ไขไฟล์ PHPMailer/src/PHPMailer.php จาก
case 'php': default: return filter_var($address, FILTER_VALIDATE_EMAIL) !== false;
เป็น
case 'php':
default:
return (bool) preg_match("/^[ก-๙a-zA-Z0-9_+&*-]+(?:\.[ก-๙a-zA-Z0-9_+&*-]+)*@(?:[ก-๙a-zA-Z0-9-]+\.)+[ก-๙a-zA-Z]{2,16}$/u", $address);
Regular expression ข้างต้นสามารถใช้ตรวจสอบรูปแบบ email ภาษาไทยได้ หากต้องการตรวจสอบ email ภาษาอื่นๆอาจต้องพิจารณาใช้ regular expression รูปแบบอื่นที่ไม่เจาะจง เช่น
- something@something ^(.+)@(.+)$
</translate>


