PHP-Oracle-special characters-NLS_LANG?
当我用sqlplus(windows7,cmd)连接到一个oracle数据库并用umlauts(ü,ö,ä)查询时,我没有得到任何回报 我查询了NLS_LANG,得到了以下结果:PHP-Oracle-special characters-NLS_LANG?,php,ajax,joomla,oracle10g,xampp,Php,Ajax,Joomla,Oracle10g,Xampp,当我用sqlplus(windows7,cmd)连接到一个oracle数据库并用umlauts(ü,ö,ä)查询时,我没有得到任何回报 我查询了NLS_LANG,得到了以下结果: AMERICAN_AMERICA.WE8ISO8859P1 oracle数据库运行在linux发行版上。因此,我打开cmd框并输入 set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 并重复了这个问题——再一次没有成功。然后我得到了以下提示: set NLS_LANG=German
AMERICAN_AMERICA.WE8ISO8859P1
oracle数据库运行在linux发行版上。因此,我打开cmd框并输入
set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
并重复了这个问题——再一次没有成功。然后我得到了以下提示:
set NLS_LANG=German_Germany.WE8PC850'
这终于奏效了。但是我想在joomla中使用查询语句。现在我不知道如何处理这个问题。我使用oci8和oracle10g。有什么想法吗
提前感谢。根据Oracle文档,您可以通过在Linux中运行“setenv”命令永久设置NLS_LANG(而不是每次连接时都必须设置):
setenv NLS_LANG German_Germany.WE8PC850
链接:
当然,这只有在您有权访问服务器时才起作用。如果您不知道,在每次Joomla连接到数据库后,可能会有一种方法称为“set NLS_LANG=German_German.WE8PC850”,但我对Joomla一无所知,因此我无法在这方面帮助您 我在@ddalala的帖子中找到了解决方案。以下是链接:
是解决方案。请记住,XAMPP服务器在Windows上运行,oracle数据库在Linux上运行,我无法访问该数据库。
utf8_decode($_POST['search_name_with_special_character'])