gpt4 book ai didi

PHP + PostgreSQL + ODBC - UTF8 - 变音符号问题

转载 作者:行者123 更新时间:2023-11-29 13:39:29 24 4
gpt4 key购买 nike

我使用官方的 pgsqlodbc,但我有变音符号问题

示例:“P�edplatn� za �ervenec 2019”

(黑色问号是错误的,正确的是“Předplatné za červenec 2019”)

但是,数据库中的数据使用我的语言变音符号是正确的(我用 ODBC Devart 测试过,一切正常 - 但 Devart 不是免费的(我在试用中测试过)。

当我使用 Valentina Studio 检查数据库时,它告诉我:

Collation Settings: Encoding UTF8

数据库是远程的,我只能在 Valentina Studio 和 PHP 的帮助下通过 VPN 进行访问。它是远程公司,我无法更改数据库中的任何内容。现在我在本地主机(Win10、Laragon、Wordpress、SAGE 模板)上运行应用程序。我必须使用 ODBC,因为我必须通过 VPN 连接到远程数据库(我在 Putty 的帮助下使用 SSH 隧道)。但!我写了 aboce,用另一个 ODBC 驱动程序 (Devart) 一切正常。所以,我想要修复设置以连接来自 Postgre 的帮助免费官方 ODBC。

我的代码:

$dsn ="DRIVER=PostgreSQL Unicode(x64);Description=Free;Data Source=localhost;Port=5433;Database=$db_customer;User ID=$user;Schema=$schema;sslmode=require;";

我也测试了 DRIVER=PostgreSQL ANSI(x64) - 同样的错误

$conn=odbc_connect($dsn,$user,$password);

$sql="SELECT IH.publi.....

$rs=odbc_exec($conn,$sql);

...odbc_fetch_row($rs)... etc. classic

somobedy 可以帮助我解决错误的变音符号吗?如何/在哪里可以设置编码 UTF8?我花了几个小时来解决问题,但一无所获。

最佳答案

在我的例子中它不是逻辑(DB 不在 Win1250 中),而是它的功能。变音符号可以。

$invoice_item["nazev"] = iconv( "CP1250", "UTF-8//IGNORE//TRANSLIT", $invoice_item["nazev"]);    

关于PHP + PostgreSQL + ODBC - UTF8 - 变音符号问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57458159/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com