ผลต่างระหว่างรุ่นของ "คู่มือการพัฒนาซอฟต์แวร์บนเว็บบราวซ์เซอร์ให้รองรับ UA ด้วยภาษา PHP"
ไปยังการนำทาง
ไปยังการค้นหา
Acappella7 (คุย | มีส่วนร่วม) |
Acappella7 (คุย | มีส่วนร่วม) |
||
แถว 39: | แถว 39: | ||
=== [[แก้ไขให้ระบบลงทะเบียนรองรับการใส่อีเมล EAI]] === | === [[แก้ไขให้ระบบลงทะเบียนรองรับการใส่อีเมล EAI]] === | ||
− | + | แก้ไขไฟล์ register.html จาก | |
'''# <input type="email" name="email" placeholder="Email" id="email" required> | '''# <input type="email" name="email" placeholder="Email" id="email" required> | ||
แถว 46: | แถว 46: | ||
=== [[แก้ไขให้ระบบลงทะเบียนตรวจสอบอีเมล EAI ได้]] === | === [[แก้ไขให้ระบบลงทะเบียนตรวจสอบอีเมล EAI ได้]] === | ||
− | + | แก้ไขไฟล์ register.php จาก | |
'''# if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { | '''# if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { | ||
'''
exit('Email is not valid!');
| '''
exit('Email is not valid!');
| ||
แถว 57: | แถว 57: | ||
=== [[แก้ไขให้ระบบลงทะเบียนสามารถส่งอีเมล EAI ได้ด้วย PHPMailer]] === | === [[แก้ไขให้ระบบลงทะเบียนสามารถส่งอีเมล EAI ได้ด้วย PHPMailer]] === | ||
− | + | แก้ไขไฟล์ PHPMailer/src/PHPMailer.php จาก | |
'''# case 'php': | '''# case 'php': | ||
''' default: | ''' default: |
รุ่นแก้ไขเมื่อ 18:59, 8 มิถุนายน 2564
Preparing to Support UA in PHP
คู่มือนี้ได้จัดทำขึ้นมาเพื่อใช้เป็นแนวทางในการพัฒนาซอฟต์แวร์บนเว็บบราวซ์เซอร์เพื่อให้รองรับโดเมนภาษาไทย (IDN) และอีเมลภาษาไทย (EAI) โดยใช้ภาษา 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
สร้างฐานข้อมูลที่รองรับ IDN และ EAI
# 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;
แก้ไขให้ระบบลงทะเบียนรองรับการใส่อีเมล EAI
แก้ไขไฟล์ register.html จาก
# <input type="email" name="email" placeholder="Email" id="email" required>
เป็น
# <input type="text" name="email" placeholder="Email" id="email" required>
แก้ไขให้ระบบลงทะเบียนตรวจสอบอีเมล EAI ได้
แก้ไขไฟล์ 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!'); }
แก้ไขให้ระบบลงทะเบียนสามารถส่งอีเมล EAI ได้ด้วย PHPMailer
แก้ไขไฟล์ 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);