MYSQL 4.1 中+MYSQL-FRONT 3.2;
$sql="update staff set staff_name=? ";
此处输出 $staff_name 为中文,如 小王;
$ret=$this->execute($sql, $staff_name);
function execute($query, $data, $offset=0, $numRows = 0xFFFFFFFF)
{
if ($numRows == -1)
{
$numRows = 0xFFFFFFFF;
}
$pieces = explode(" ", $query);
if (strToLower($pieces[0]) == "select"){
$query .= " limit ?, ?";
$data[] = $offset;
$data[] = $numRows;
}
$stmt = $this->db_conn->prepare($query);
if (DB::isError($stmt))
{
$this->halt("execute:repare", $stmt->getDebugInfo(), $stmt->getMessage());
}
$this->db_result = $this->db_conn->execute($stmt, $data);
if (DB::isError($this->db_result))
{
$this->halt("execute:execute", $this->db_result->getDebugInfo(), $this->db_result->getMessage());
}
return $this->db_result;
}
staff_name 进入数据库中 不是中文,是个XX符号,大家帮我看看 execute这个函数转码了吗?
页面显示却是中文,可我想直接 在DB中执行SQL:update staff set staff_name='小李';页面显示出来的就是??乱码了,
我不知怎么回事?
$sql="update staff set staff_name=? ";
此处输出 $staff_name 为中文,如 小王;
$ret=$this->execute($sql, $staff_name);
function execute($query, $data, $offset=0, $numRows = 0xFFFFFFFF)
{
if ($numRows == -1)
{
$numRows = 0xFFFFFFFF;
}
$pieces = explode(" ", $query);
if (strToLower($pieces[0]) == "select"){
$query .= " limit ?, ?";
$data[] = $offset;
$data[] = $numRows;
}
$stmt = $this->db_conn->prepare($query);
if (DB::isError($stmt))
{
$this->halt("execute:repare", $stmt->getDebugInfo(), $stmt->getMessage());
}
$this->db_result = $this->db_conn->execute($stmt, $data);
if (DB::isError($this->db_result))
{
$this->halt("execute:execute", $this->db_result->getDebugInfo(), $this->db_result->getMessage());
}
return $this->db_result;
}
staff_name 进入数据库中 不是中文,是个XX符号,大家帮我看看 execute这个函数转码了吗?
页面显示却是中文,可我想直接 在DB中执行SQL:update staff set staff_name='小李';页面显示出来的就是??乱码了,
我不知怎么回事?
update staff set staff_name=N'小李'