2014-09-19 52 views
0

的Yii通過模型規則 允許文本框英文字符怎麼可能如何允許在警予模型規則僅英文字符的文本框

只允許字符英語不是印地文,馬拉地語或其他語言。 我的模型規則是:

array('description', 'match', 'pattern'=>'/[^0-9a-zA-Z_-]/'), 

當我提交這份文本

Lorem存有फक्तमुद्रणआणि排版उद्योगाच्याबनावटमजकूरआहे。 Lorem存有अज्ञातप्रिंटरप्रकारएकठेंगणेसपाटघेतलाआणिएकप्रकारनमुनापुस्तककरण्यास炒तेव्हाइ.स.चे1500चेदशक,पासूनकधीहीउद्योगच्यामानकबनावटमजकूरकेलेआहे。在這種情況下,你可以使用排版方式來排版文字。 हेLorem存有परिच्छेदअसलेलेLetrasetपत्रकेच्याप्रकाशात1960年मध्येलोकप्रिय,आणिअधिकअलीकडे的Lorem Ipsum.Lorem存有आवृत्त्यासमावेश的Aldus PageMaker的जसेडेस्कटॉपप्रकाशनसॉफ्टवेअरसहफक्तमुद्रणआणि排版उद्योगाच्याबनावटमजकूरआहे。 Lorem Ipsumअज्ञातप्रिंटरप्रकार

給出了一個這樣的例外。

CDbException 

CDbCommand failed to execute the SQL statement: SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xE0\xA4\xAB\xE0\xA4\x95...' for column 'description' at row 1. The SQL statement executed was: UPDATE `mmm_specialoffer` SET `id`=:yp0, `shop_id`=:yp1, `category`=:yp2, `service_id`=:yp3, `title`=:yp4, `description`=:yp5, `offer_from_date`=:yp6, `offer_to_date`=:yp7, `added_date`=:yp8 WHERE `mmm_specialoffer`.`id`=8 

throw new CDbException(Yii::t('yii','CDbCommand failed to execute the SQL statement: {error}', 

謝謝。

+0

請在這裏粘貼您當前使用的模型規則,或者您在主題 – webeno 2014-09-19 06:59:18

+0

中所做的任何研究。在一個形式?就像一個簡單的文本字符串...?詳細信息,請!!啊,和你嘗試過的一些代碼也會很好 – webeno 2014-09-19 07:01:26

+0

我在表單中使用這個,我已經在我的問題中發佈了我的代碼,請參閱。 – aman 2014-09-19 07:04:57

回答

0

這應該做到這一點 -

/^[0-9a-zA-Z_-\s]*$/i - 只允許數字,字母,下劃線,連字符和空格。

/^['0-9a-zA-Z_-\s]*$/i - 也允許撇號。

相關問題