我在使用PHP从MYSQL数据库中检索阿拉伯数据时遇到问题,它显示为问号“????”在HTML中:
请帮助!!!
答案 0 :(得分:34)
你必须在第一次通过这个查询连接mysql时设置charset:
SET CHARACTER SET utf8
例如在mysqli函数
中$MySQL_Handle = mysqli_connect(HOSTNAME,DATABASE_USERNAME,DATABASE_PASSWORD,DATABASE_NAME)
or die ( mysqli_error($MySQL_Handle) );
$sSQL= 'SET CHARACTER SET utf8';
mysqli_query($MySQL_Handle,$sSQL)
or die ('Can\'t charset in DataBase');
和PDO样本:
$dbh = new PDO('mysql:host=localhost;dbname=' . $DB_NAME, $DB_USER,
$DB_PASS, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"));
$dbh->exec("SET CHARACTER SET UTF8");
此操作需要在插入之前和选择之前。