|
|
|
ต้องการเชค ไม่ให้ User อัพโหลดไฟล์ที่ถูกตั้งชื่อเป็นภาษาไทย |
|
|
|
|
|
|
|
ให้เช็คแค่ภาษาอังกฤษอย่างเดียว ไม่เข้าเงื่อนไขตัดไป else เลยไม่ต้องเช็คภาษาไทย ไม่ต้องให้แจ้ง Alert ว่าผิดอะไรตรงไหน ให้แจ้งว่าผิดรูปแบบแค่นั้นพอ และไปใส่ span alert ว่าต้องการ name รูปแบบไหนพอ
match
if (!preg_match('/[^A-Za-z0-9]/', $string))
}else{
}
|
ประวัติการแก้ไข 2020-04-07 10:46:53
|
|
|
|
Date :
2020-04-07 10:44:13 |
By :
Genesis™ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
else if (preg_match('/[ก-๛]/u',$new_names))
หรือ
else if (preg_match('/[\u0e01-\u0e5B]/',$new_names))
55555 เพิ่งเห็น 5.2
ประยุกต์เอาก็แล้วกัน อักขระอ้างอิงไม่ต่างกัน เปลี่ยนแค่ function
หมายเหตุ ถ้ามีภาษาไทยแค่ตัวเดียว จะ alert
ถ้าไม่เอา ก็ใส่ not เข้าไปด้านหน้า
ปล. อีกครั้ง
ส่วน algorithm ต้อง ลองเขียนดูว่าจะตรวจสอบอะไรก่อน วาง flow control ให้ดี
จากโค๊ดที่ทำไว้ ตรวสอบ ภาษาอังกฤษ ไม่จำเป็น ยกเว้น ต้องการ เฉพาะ อักษร A-Za-z และ จุด เท่านั้น
วิเคราะห์เอา ต้องการอะไร
|
ประวัติการแก้ไข 2020-04-07 10:52:56 2020-04-07 10:56:03 2020-04-07 11:02:41
|
|
|
|
Date :
2020-04-07 10:51:12 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ pattern
#[^\da-z\-_]#iu
หาค่าที่ไม่ใช่ตัวเลข ไม่ใช่ a-z ไม่ใช่ ขีดกลาง- และล่าง_
i คือ case insensitive
u คือ unicode
ที่มา https://github.com/Rundiz/upload/blob/version2/Rundiz/Upload/Upload.php#L701
ความจริงควรแปลงชื่อไฟล์ซะเลยมากกว่าแจ้ง error กลับไป บางกรณีผู้ใช้ไม่สะดวกอย่างมากในการเปลี่ยนชื่อไฟล์เอง เช่น ใช้มือถือ.
|
ประวัติการแก้ไข 2020-04-07 13:17:10
|
|
|
|
Date :
2020-04-07 13:16:56 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|