gb から utf-8 へ_経験の交換

WBOY
リリース: 2016-05-16 12:10:04
オリジナル
1756 人が閲覧しました

現在、多くの中国語 Web サイトのエンコーディングが gb2312 から utf-8 エンコーディングに変換されています。多くの問題が発生しますが、ここに要約します:

前提条件:

すべてのファイルが ANSI ではなく UTF-8 エンコードで保存されていることを確認してください

特定の設定: テキスト エディターを使用している場合は、ファイルを保存するときにエンコードの選択があります (図 1) 文本编辑器的保存对话框 UTF-8 を選択するだけです。

Dreamweaver を使用している場合は、少し面倒になります。

Dreamweaver を使用して静的ファイルを編集する場合は、ファイルの charset タグを utf-8 に変更します: <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> に変更し、[名前を付けて保存] を選択すると、Dream はファイルを utf-8 エンコードとして保存します

注: Access データベースを使用している場合は、上記の 2 つの手順のみが必要です。Access 自体は UTF-8 エンコードを使用します。

ASP 記事

コード ページ設定:

ASP ファイルの最初の行: <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> に変更されました。これは、ASP が ADO​​ 経由でデータベースにアクセスするために使用するエンコーディングも直接決定します。
注: Access データベースを使用している場合は、上記の 2 つの手順のみが必要です。Access 自体は UTF-8 エンコードを使用します。

テンプレート プログラムを使用する場合

通常のテンプレート プログラムは、fso オブジェクトを通じてファイルの読み取りと書き込みを行います。ただし、このメソッドは utf-8 をサポートできないため、ファイルの読み取りと書き込みを行うにはストリーム オブジェクトに変更する必要があります。コードの重要な行をいくつか示します。
Use stram to read files
Set objStream = Server.CreateObject(" ADODB.Stream") <code>Set objStream = Server.CreateObject("ADODB.Stream") <br>    With objStream <br>    .Open <br>    .Charset = "utf-8" <br>    .Position = objStream.Size <br>    .LoadFromFile server.mappath("sc.htm")<br>    wstr = .ReadText<br>    .Close <br>    End With <br>Set objStream = Nothing<br>  objStream を使用 Set objStream = Server.CreateObject("ADODB.Stream") <br>    With objStream <br>    .Open <br>    .Charset = "utf-8" <br>    .Position = objStream.Size <br>    .WriteText=wstr <br>    .SaveToFile server.mappath("wz/sc_" & classid & ".htm"),2  <br>    .Close <br>    End With <br>Set objStream = Nothing .Open

.Charset = "utf-8"

.Position = objStream.Size

.LoadFromFile server.mappath(" sc.htm")

wstr = .ReadText

.Close

End With <?php<BR>$conn = new COM("ADODB.Connection",NULL,65001) or die("ADO connect failed!");<BR>$rs = new COM("ADODB.RecordSet") or die("ADO recordset fail"); $conn->open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb"); <br>$rs = $conn->Execute("select * from data");<br>while not $rs->EOF<br>echo $rs->Fields['title']->value;<br>?>Set objStream = Nothing

ストリームを使用してファイルを書き込みます Set objStream = Server.CreateObject ("ADODB.Stream" ) objStream あり <p> .Open </p> .Charset = "utf-8" <code><?php mysql_query("SET NAMES 'utf8'"); ?> .Position = objStream.Size .WriteText=wstr .SaveToFile サーバー.mappath("wz/ sc_" & classid & ".htm"),2
.Close

End With Set objStream = Nothing php の記事

php とアクセス接続:


Windows ホストで PHP の com 拡張機能を使用して、ADODB.Connection を確立するときに、コード ページ パラメーターを 65001
<?php<BR>$conn = new として指定します。 COM(" ADODB.Connection",NULL,65001) または die("ADO 接続に失敗しました!");</P>$rs = new COM("ADODB.RecordSet") または die("ADO レコードセット失敗"); -> open("Provider=Microsoft.Jet.OLEDB.4.0;データ ソース=data.mdb");

$rs = $conn->Execute("select * from data");

$rs ->EOF

echo $rs->Fields['title']->value;

?>

ではありません php と mysql の接続

mysql データベースとの接続を確立した後、まず次の SQL クエリを実行します: <?php<BR>require_once('adodb/adodb.inc.php'); <BR>$conn =& ADONewConnection('ado_access'); <BR>$conn->charPage ='65001';<br>//$conn->charPage = 65001;<br>//$conn->debug = true;<br>$dsn = sprintf("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= %s",realpath('2data.mdb'));<br>// $dsn = sprintf("Driver={Microsoft Access Driver (*.mdb)};Dbq=%s",realpath("data.mdb"));<br>$conn->Connect($dsn); mysql マニュアル セット名の説明 SET NAMES は、クライアントから送信された SQL ステートメントで使用されている文字セットを表示します。したがって、SET NAMES 'cp1251' ステートメントは、サーバーに「このクライアントからの今後の情報では文字セット cp1251 が使用される」ことを伝えます。また、サーバーがクライアントに送り返す結果の文字セットも指定します。 (たとえば、SELECT ステートメントを使用する場合、列の値にどの文字セットが使用されているかが示されます。) SET NAMES 'x' ステートメントは、次の 3 つのステートメントと同等です: mysql> SETcharacter_set_client = x; adodb クラスを使用します: 「charpage」属性を 65001 に設定します。 <?phprequire_once('adodb/adodb.inc.php'); $conn =& ADONewConnection('ado_access') ) ; $conn->charPage ='65001';//$conn->charPage = 65001;//$conn->debug = true;$dsn = sprintf ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= %s",realpath('2data.mdb'));// $dsn = sprintf("Driver={Microsoft Access Driver (*. mdb )};Dbq=%s",realpath("data.mdb"));$conn->Connect($dsn);
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート