ホームページ  >  記事  >  バックエンド開発  >  PHPテーブル作成(mysql)エンコーディングの問題

PHPテーブル作成(mysql)エンコーディングの問題

WBOY
WBOYオリジナル
2016-06-23 14:02:23977ブラウズ

私はちょうど PHP に触れたところです。本に書かれている例によれば、これはコードです:

<?php$con=mysql_connect("localhost","root","mysql");			//建立连接并赋值给变量if($con)										//如果返回连接标识{	mysql_select_db("test");					//选择test操作库	$sql="CREATE TABLE temp	(		id int(5) not null auto_increment primary key,		name char(10) not null default '',		sex char(2) not null default '男',		age int(3) not null default 0,		work char(10) not null default '',		city char(10) not null default '',		other char(50) not null default ''	)";	$result=mysql_query($sql);					//执行建表SQL语句	if($result)									//如果成功执行	{		echo "成功在test数据库中创建表!";		//输出内容	}	else echo "建表时出现错误!".mysql_error();	}else											//如果返回False{	echo "连接到服务器时出现错误!";				//输出内容}?>

実行中のエラーは次のとおりです: テーブルの作成中にエラーが発生しました。 「性別」のデフォルト値が無効です。
私の mysql 文字セットは gbk です。ネットでいろいろ検索してもうまくいかなかったので、助けを求めて質問を投稿しました。コードを変更するにはどうすればよいですか? 何かアイデアがあれば、ぜひ教えてください。


ディスカッションへの返信 (解決策)

$con=mysql_connect("localhost","root","mysql")

mysql_query("set names gbk"); ......


実行してみます

$con=mysql_connect("localhost","root","mysql");
mysql_query("set names gbk")

.. ......


実行してみましたが、うまくいきません。

$con=mysql_connect("localhost","root","mysql");
mysql_query("set names gbk");

......


in 実行してみてください。うまくいくかどうか見てみましょう?

php ファイルを gbk エンコードとして保存し、再試行します

$con=mysql_connect("localhost","root","mysql");

mysql_query("set names gbk");

..... .......


実行してみると、手動でテーブルを作成し、簡単な登録を行ったところ、登録に成功しました。次に、元のコードに戻ってテーブルを作成し、mysql_query("set names gbk"); を追加しました。笑。 。 。本当に奇妙です、今朝BaiduとGoogleでこの方法を試しましたが成功しませんでした。 。うまくいきました、奇妙です!それはあなたの幸運でしょう、ありがとう!ポイントをあげます。

このエンコードについて言えば、今朝もやりましたが、名前を付けて保存のエンコードオプションにgbkがないのでうまくいきませんでした。どうやってやったのですか?

php ファイルのエンコードは、mysql データベースのエンコードと一致している必要があり、mysql データベース サーバーのエンコードも一致している必要があります。 。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。