1
$HotelName = "Adams’ Inn";
$ID = 1;
$stmt = $sql->prepare("UPDATE coupons SET HotelName=? WHERE ID=?");
$stmt->bind_param("si",$HotelName,$ID);
$stmt->execute();

出力:アダムスの宿屋

ちなみに私は以下のものを持っています。

文字セット: utf8

照合: utf8_general_ci

4

3 に答える 3

2

チェックリスト

  1. $sql->set_charset('utf8')接続直後。
  2. header('Content-Type: text/html; charset=utf-8');出力の前に

サーバーとクライアントの 2 つの側面が関係しています。クライアントとは、HTTP クライアントではなく、PHP スクリプトを意味します。サーバーは、クライアントが期待するエンコーディングを知る必要があります。
また、サーバー側のエンコーディングのみを設定し、mysql にどのエンコーディング データを格納する必要があるかを伝えます。
しかし、クライアントもいます。

実際、Mysql は記録に優れています。あるエンコーディングを別のエンコーディングに変換できる限り、Mysql はそれを実行できます。たとえば、さまざまなクライアントの場合。
最近ではあまり需要がありませんが、この機能は存在します。そのため、Mysql はクライアントがサポートしているエンコーディングを知る必要があります。この目的のためにset_charset()関数が存在します。

于 2013-02-13T06:50:46.550 に答える
0

SETクエリにキーワードがありません

$HotelName = "Adams’ Inn";
$ID = 1;
$stmt = $sql->prepare("UPDATE coupons SET HotelName=? WHERE ID=?");
$stmt->bind_param("si",$HotelName,$ID);
if($result=$stmt->execute())
   echo "Data Updated Sucessfully!!!";
else
   echo "Error in Update";
于 2013-02-13T06:50:40.703 に答える
-1

とてもシンプルです

置くだけ

mysqli_set_charset($db_connection, 'utf8');

データベース接続後。

$con=mysqli_connect("localhost", "root", "xxxxx","database");
mysqli_set_charset($con, 'utf8');
于 2013-08-04T07:20:11.740 に答える