Maison > Article > interface Web > De Go à l'échange utf-8_experience
Maintenant, l'encodage de nombreux sites Web chinois passe de l'encodage gb2312 à l'encodage utf-8. De nombreux problèmes se posent et sont résumés ici :
Assurez-vous que tous les fichiers sont enregistrés au format UTF-8 et non ANSI
Paramètres spécifiques : Si vous utilisez un éditeur de texte, il existe une sélection d'encodage lors de l'enregistrement du fichier (Figure 1) Sélectionnez-le simplement au format UTF-8.
Si vous utilisez Dreamweaver, ce sera un peu plus gênant.
Lorsque vous utilisez Dreamweaver pour modifier des fichiers statiques, modifiez la balise charset du fichier en utf-8 : <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
en <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
, puis sélectionnez Enregistrer sous. Dream enregistrera le fichier encodé en utf-8
Remarque : si vous utilisez la base de données Access, vous n'avez besoin que des deux étapes ci-dessus. Access lui-même utilise le codage UTF-8.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
modifiée en : <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
Cela détermine également directement l'encodage utilisé par ASP pour accéder à la base de données via ADO. 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>
Avec 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 .Close
Terminer par<?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>?>
Définir objStream = NothingUtiliser le flux pour écrire des fichiers
Définir objStream = Server.CreateObject ("ADODB.Stream") Avec objStream <p> .Open </p> .Charset = "utf-8" <code><?php mysql_query("SET NAMES 'utf8'"); ?>
.Position = objStream.Size .WriteText=wstr .SaveToFile serveur .mappath("wz/ sc_" & classid & ".htm"),2 Terminer par Set objStream = Nothing
article php
Utilisez l'extension COM de PHP sur l'hôte Windows pour vous connecter à la base de données d'accès. Lors de l'établissement de ADODB.Connection, spécifiez le paramètre de page de codes comme 65001<?php<BR>$conn = new. COM(" ADODB.Connection",NULL,65001) ou die("Échec de la connexion ADO!");</P>$rs = new COM("ADODB.RecordSet") ou die("Échec du jeu d'enregistrements ADO"); -> open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb");
pendant pas $rs ->EOF
echo $rs->Fields['title']->value;Après avoir établi une connexion avec la base de données mysql, exécutez d'abord la requête SQL suivante :
<?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);
manuel mysql Description des noms d'ensemble SET NAMES affiche le jeu de caractères utilisé dans l'instruction SQL envoyée par le client. Par conséquent, l'instruction SET NAMES 'cp1251' indique au serveur que « les futures informations de ce client utiliseront le jeu de caractères cp1251 ». Il spécifie également le jeu de caractères pour les résultats que le serveur renvoie au client. (Par exemple, si vous utilisez une instruction SELECT, elle indique quel jeu de caractères est utilisé pour les valeurs de colonne.) L'instruction SET NAMES 'x' est équivalente à ces trois instructions :
mysql> SET caractère_set_client = x;
Utiliser la classe adodb :
Définissez l'attribut 'charpage' sur 65001; <?php<🎜>require_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);