Character encoding 将西里尔文字从flash as2发送到数据库
我在将数据从FlashAS2保存到数据库时遇到了一个很大的问题。我试着自己解决它,在不同的论坛上读了很多话题,但没有结果 我在as2项目中有一个输入文本字段(Character encoding 将西里尔文字从flash as2发送到数据库,character-encoding,internationalization,actionscript-2,Character Encoding,Internationalization,Actionscript 2,我在将数据从FlashAS2保存到数据库时遇到了一个很大的问题。我试着自己解决它,在不同的论坛上读了很多话题,但没有结果 我在as2项目中有一个输入文本字段(mess_txt),并使用下一个代码发送按钮: on(发布){ var formData=new LoadVars(); formData.etext=mess_txt.text; sendAndLoad(“sendmail.php”,formData,“POST”); formData.onLoad=函数(){ //接收操作。。。 } }
mess_txt
),并使用下一个代码发送按钮:
on(发布){
var formData=new LoadVars();
formData.etext=mess_txt.text;
sendAndLoad(“sendmail.php”,formData,“POST”);
formData.onLoad=函数(){
//接收操作。。。
}
}
sendmail.php中的代码:
结果,我发送字符串“т;е;с;т;
”,而不是“。
在PHP文件中,我收到了以下字符串:
在那之后,我得到了正常的西里尔文(或任何其他)文本
希望这对某人有用 既然你已经自己解决了这个问题,你应该把它作为答案发布,而不是编辑问题。除此之外,你还可以在答案和问题上赢得声誉。作为诚意的象征,如果你在这里的另一条评论中给我加上标签,我会投票给你的答案,因为它似乎措辞得体。嗨,我试图在这个话题中添加答案而不是评论,但我还没有足够的声誉。这就是我在评论中组织回答的原因。啊,我明白了。抱歉,这太糟糕了:o(我已经对你的一些问题投了赞成票,这可能会有所帮助。你也应该去给任何你觉得有用的答案打绿色的勾号,比如,这也会为你赢得声誉。
include("connect.php");
$text = $_POST['etext'];
$text = str_replace("\r", "<br/>", trim(strip_tags($text)));
$text = str_replace("\n", "", $text);
$text = str_replace("\"", """, $text);
$text = str_replace("'", "'", $text);
$query = "insert into reviews (text, status) values ('".$text."', 'new')";
mysql_query($query) or die (mysql_error());
mail("mail@gmail.com", "Title!", "Message text: ".$text);
on(release){
var txt = getRealText(mess_txt.text);
var formData = new LoadVars();
formData.etext = txt;
formData.sendAndLoad("sendmail.php", formData, "POST");
formData.onLoad = function(){
// receive actions...
}
function getRealText(str){
var newStr = "";
for(i=0, s=str.length; i<s; i++){
newStr += "&#"+ord(str.charAt(i))+";";
}
return newStr;
}
}
$text = html_entity_decode($_POST['etext'], ENT_NOQUOTES, 'UTF-8');