我需要知道如何您可以從任何input type="text"
字段中輸入表情符號,用戶ABE能夠提交我的形式阻止平板電腦或移動用戶,但它引起我的中間層的錯誤,因爲他們來通過作爲正方形,並寫入我的數據庫作爲正方形。停止表情被輸入輸入字段中
不能在谷歌上找到解決方案,所以認爲id在這裏問。
是否有我可以使用的HTML屬性?
我需要知道如何您可以從任何input type="text"
字段中輸入表情符號,用戶ABE能夠提交我的形式阻止平板電腦或移動用戶,但它引起我的中間層的錯誤,因爲他們來通過作爲正方形,並寫入我的數據庫作爲正方形。停止表情被輸入輸入字段中
不能在谷歌上找到解決方案,所以認爲id在這裏問。
是否有我可以使用的HTML屬性?
通過更改編碼來使數據庫兼容可能是一個更好的主意。
話雖這麼說,你可以循環遍歷文本字段中的所有字符,並確保他們的序號是32到255(含)之間。這樣可以讓你只允許打印ASCII字符,對於任何英文文本來說都足夠了。
事情是這樣的:(未經測試,在textarea的類型)
function stripNonAscii(input) {
let output = '';
for (var i = 0; i < input.length; i++) {
let c = input.charCodeAt(i);
if(c >= 32 && c <= 255) {
output += input.substring(i, 1);
}
}
return output;
}
這是正確的答案。在表單處理過程中,應該/可以再次檢查後端。 – eosrei
根據您的後端數據庫,你也可以使用'utf8_unicode_bin'相當於編碼和你的數據庫將能夠處理的表情符號就好了。 (只要你不假設1個字符長度爲1字節) – Kris
@Kris我不想要emojis。 – murday1983
也許,但你可能想現在還是向下行,如中國,日本,朝鮮文,阿拉伯文等支持 – Kris