php mysqlの単純なインスタンスを読み込む
1822 ワード
$link=mysql_connect("localhost","root"," ");
if(!$link) echo " !";
mysql_select_db("infosystem", $link); //
$q = "SELECT * FROM info"; //SQL
mysql_query("SET NAMES GB2312");
$rs = mysql_query($q); //
if(!$rs){die("Valid result!");}
echo "";
echo "";
while($row = mysql_fetch_array($rs)) echo ""; //
echo " PC $row[1] $row[2] $row[3]
";
mysql_free_result($rs); //
?>
中国語の文字化けし問題PHPでMySQLデータベースにアクセスすると、テーブルのデフォルト文字セットがutf 8に設定され、UTF-8コードでクエリーが送信されても、データベースに格納されている文字は文字化けしていることがわかります.実は簡単な方法はphpMyAdminで設定します.次の項目を設定します:1:言語設定chinese(zh-utf-8)2:MySQL文字セット:UTF-8 Unicode(utf 8)3:MySQL接続校正:utf 8_general_ci 4:データベースとデータテーブルを新規作成する場合は、項目を整理してutf 8_を選択します.general_ciは以上の設定でphpMyAdminで操作やクエリーをするとき、中国語の文字は文字化けしません.しかし、phpプログラムで以前のsql文でクエリした結果は文字化けしており、connection接続層に問題があることがわかります.解決策は、データベースに正常に接続した後、クエリー文を送信することです.
1: $this->LinkID = mysql_connect($this->Host, $this->User, $this->Password);
2: mysql_query('SET NAMES 'utf8'', $this->LinkID);
:
DEFINE ('LINK', mysql_connect (DB_HOST, DB_USER, DB_PASSWORD));
mysql_query("SET NAMES 'utf8'", LINK);
gbk符号化
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");