私はC#からPHPスクリプトにデータを送信しようとしています。 PHPページは、投稿されたデータをデータベースに挿入しますが、エンコーディングはUTF-8である必要があります。データがé
またはà
のような文字が含まれている場合、彼らはÄ© Ä ....
として挿入されますC#からPHPへのパラメータエンコーディングを投稿
$data = $_POST["q"];
insert_to_database($data);
:
WebClient client = new WebClient();
client.Encoding = Encoding.UTF8;
NameValueCollection data = new NameValueCollection();
string rq = "data here";
rq = Convert.ToBase64String(Encoding.UTF8.GetBytes(rq));
data["q"] = rq;
byte[] buffer=client.UploadValues("url of php file", "POST", data);
コードPHPファイル内:ここ
は、C#のコードです。
エラーは、データベース接続が設定されている方法で、実際にPHP側にある、またはのように思えます。 PHPはエンコーディングの種類を知っていません。あなたが持っているデータはすでにUTF8ですが、(PHPとデータベースとの会話によって)ANSI/Latinで扱われます。 – GolezTrol
私はphpmyadminに行ってデータを挿入すると、[この質問](https://stackoverflow.com/questions/4623733/utf-8-problems-php-mysql) – GolezTrol
であなたの質問に対する答えを見つけることができると思いますéàのような文字で直接表示されます – Th3Wolf