php - 将重音字符从 PHP 脚本保存到 Oracle DB

标签 php oracle diacritics

我正在尝试将重音字符 èòàèì 保存到 VARCHAR2 字段中的 Oracle 数据库中。我放了

<html>
<head>
   <meta http-equiv="Content-type" value="text/html; charset=utf-8">
</head>
<body>
<?php
 header('Content-type: text/html; charset=utf-8');

....
//在这里我将插入到数据库中:

$str=utf8_encode("JeanPièrre"); // or $str="JeanPièrre" ... is the same, it does not run
$sql="insert into TABLE(nvar) values('".$str."')";
$stmt = oci_parse($ora_conn, $sql) or die(oci_error().$query);
oci_execute($stmt);

但是重音字符没有正确保存,我看到 JeanPi??rre

我能做什么?请帮助我。
提前致谢!

最佳答案

确保您的表具有 UTF8 字符集,并确保与数据库的连接使用 UTF8。在搜索 Oracle 示例时,我发现了这个:

resource oci_connect  ( string $username  , string $password  [, string $connection_string  [, string $character_set  [, int $session_mode  ]]] )

这会变成类似的东西

$conn = oci_connect('insertUsername', 'insertPassword', 'insertHostname', 'AL32UTF8');

完整文档:

http://nl3.php.net/oci_connect

关于php - 将重音字符从 PHP 脚本保存到 Oracle DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3554553/

相关文章:

java - Java 中的德语字符

Oracle 从两个表中选择数据,如果一个为空返回 null

php - 使用 gdlib 复制透明 PNG

php - 我应该如何阅读从 Firefox 导出的书签?

php - 了解 mysql 连接如何工作

sql - 分组并在sql中有多个值

oracle - 从 Oracle 10g 数据库架构中删除连接的用户

php - 文件系统上的奇怪元音编码

Java 如何将带重音符号的 "e"添加到字符串中?

javascript - jQuery 自动完成远程数据源和动态行