Wednesday, March 21, 2012

[PHP][MYSQL][HTML] 字元數跟字數的差別

在HTML的表單中,我們可以限制使用者在欄位中輸入過長的文字,例如:<input type="text" name="usrname" maxlength="10" />,目的是避免當資料寫入資料庫時,超過當初設計的字元上限,而造成寫入失敗。

我們雖然在表單限制使用者只能輸入10個字數,但假設使用者是輸入10個中文字,那麼"字元數"就會是20,所以,當資料庫該欄位的字元數上限只有10的時候,仍然會寫入失敗。

另外,一些特殊的文字(例如:俄文),一個字就會佔很多字元數,要特別注意。
如果我們想要簡單測試一下字串的字元數,可以利用下面簡單的程式...

<?php
echo $_POST['str'];
echo "<br />";
echo strlen($_POST['str']);
$html=<<<asdf
<form action="" method="post">
<input type="text" name="str" />
<input type="submit" />
</form>
asdf;
echo $html;
?>

No comments:

Post a Comment