Jump to content
php.lv forumi

Garumzīmes kontaktformai!


naathans

Recommended Posts

Sveiki!

 

Gribu izmantot šo te skriptu kontaktformai: http://www.freecontactform.com/html_form.php

 

Kāds var palīdzēt ar garumzīmēm?

 

Ja piemēram laukā First name ieraksta Jānis, tad izmet erroru, ka nav pareizi.

Ja raksta Janis, tad viss ir kārtībā! Kāds varētu lūdzu palīdzēt? :)

Link to comment
Share on other sites

Jāmaina šis:

 

$string_exp = "/^[A-Za-z .'-]+$/";

 

šis regex patterns patreiz matcho tikai latin characters, vajag unicode.

 

$string_exp = '/\A[\\p{L} .\'-]+\z/u';

 

pamēģini šo. Explanation: \A - string sākums (^var pāris control characterus palaist garām, cik esmu lasījis), \z - string beigas, \\p{L} - http://php.net/manual/en/regexp.reference.unicode.php.

u beigās nozīmē "ieslēgt unicode mode".

Edited by jurchiks
Link to comment
Share on other sites

Un ko tad, ja krieviski ierakstīs? Uzreiz čau. Labāk jau lietot "\\p{L}", un nebūs jāmaina regex katru reizi, kad kāds jauns burts būs vajadzīgs.

 

@naathans - par to pašu vārdu/uzvārdu lamājas jeb par kaut ko citu?

 

Edit: bļin, notestēju to patternu uz savas kastes, neiet... maybe kkādu compile-time flagu vajag, hz.

Edit2: oh w8, no. Uzliku failam UTF-8 encoding (testēju np++, default ANSI), aizgāja normāli. Maybe tev vnk failam nepareizais encoding.

Edited by jurchiks
Link to comment
Share on other sites

Konkrēti šobrīd cilvēks raud par LV garumzīmēm, tāpēc ir piedāvāts ātrs un nesāpīgs risinājums.

Man škiet, ka

$string_exp = '/\A[\\p{L} .\'-]+\z/u';

Par valīdu tiks uzskatīts arī "ütf väcu ö" respektīvi valīds būs ne tikai latviešu simbols!

Link to comment
Share on other sites

Cik tev šaurs redzesloks... Kur cilvēks teica, ka validēt vajag TIKAI latviešu simbolus un nevienas citas valodas?

Tas, ka es iedevu triviālu risinājumu nenozīmē, ka redzesloks ir šaurs, kā jau minēju iepriekš, tavs risinājums validē burtus, kas nav prasīti, tātad tas nozīmē, ka arī tavā regex ir jāraksta izņēmumi!

Konkrētajā gadījumā, manuprāt uzrakstīt izņēmumums ir vieglāk, nekā uzrakstīt visu UTF-8 bloku un mēģināt norādīt, kuri UTF-8 simboli tomēr nekvalificējas manām prasībām.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...