如果你不想担心这么多不同的字符集值编码,或者ヶ辆不适合你的工作,这里的选择: 我用mysqli的数据库连接(和PHPV5)表单POST写作/插入到MySQl DB。
$Notes = $_POST['Notes']; //can be text input or textarea.
$charset = mysqli_character_set_name($link); //only works for mysqli DB connection
printf ("To check your character set but not necessary %s\n",$charset);
$Notes = str_replace('"', '"', $Notes); //double quotes for mailto: emails.
$von = array("ä","ö","ü","ß","Ä","Ö","Ü"," ","é"); //to correct double whitepaces as well
$zu = array("ä","ö","ü","ß","Ä","Ö","Ü"," ","é");
$Notes = str_replace($von, $zu, $Notes);
echo " Notes:".$Notes."<br>" ;
$Notes = mysqli_real_escape_string($link, $Notes); //for recommended mysqli DB connection.
//$Notes = mysql_real_escape_string($Notes); //for old deprecated mysql DB connection.
// mysqli_real_escape_string Escapes special characters in a string for use in an SQL statement
echo " Notes:".$Notes ; //ready for inserting
阅读有关编码以及它们在这两个伟大的文本处理,你一定会发现问题:http://kunststube.net/frontback/和http://kunststube.net/encoding/。 – 2013-02-20 09:57:49
数据库表的编码是什么?确保它也是utf-8。同时检查你的脚本是否收到正确的字符串在将表单数据插入到数据库之前回显表单数据。 (后验证。)这里 – 2013-02-20 10:01:58
查找方案在MySQL SET NAMES UTF8?] [1] [1]:http://stackoverflow.com/questions/2159434/set-names-utf8-in- mysql – sanj 2013-02-20 10:04:40