从包含的文件设置MySQL字符集不起作用

时间:2011-01-24 03:49:31

标签: php mysql php4

对于我的大多数脚本,我都包含一个文件,我连接到数据库,确保设置了某些会话变量等。在脚本中,我使用以下代码:

mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARSET 'UTF8'");

现在,问题是,当用日语字符或同等词提交某些东西时,它只会变成问号。但是,当我在脚本中使用SET NAMES和SET CHARSET时,用户进行提交或编辑时,它可以正常工作。为什么它不适用于包含的脚本?我想要一个文件,其中大多数页面的所有必要代码都可用。

我正在使用PHP 4.4.9和MySQL 4.1.22。不幸的是我可以 NOT 更新版本,因为我不是服务器的管理员,而且管理员实际上丢失了root密码,所以我坚持使用这些版本。

这是所有代码

<?
session_start();
header('Content-Type: text/html; charset=UTF-8');
require 'dbconnect.php'; // Only contains mysql_select_db and mysql_connect
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARSET 'UTF8'");

if(!isset($_SESSION['Username'])){
header('Location: /logout.php');
}

if(isset($_SESSION['Username'])){
$Userexists = mysql_query("SELECT * FROM `users` WHERE `Username`='".$_SESSION['Username']."'");
$Userexists = mysql_num_rows($Userexists);
  if ($Userexists == 0){
  header('Location: /logout.php');
  }
}
?>

0 个答案:

没有答案