gpt4 book ai didi

php - UTF8 读取波斯字符串为 ?在 MySQL 5.0 中

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

我在 MySQL 5.0 中有一个表,我用波斯语将城市名称放入其中,并使用一个页面尝试读取特定的城市名称!以前是word,今天突然我页面里的城市名全是'??????'喜欢!我转到 phpMyAdmin,将所有排序规则设置更改为“utf_persian_ci”,但没有任何反应!有趣的是 phpMyAdmin 的“浏览”选项显示一切正常(所有城市名称都正常!)但是当我尝试从页面使用这种查询获取它们时,事情发生了:

$result = dbquery("SELECT * FROM ".DB_CITIES." WHERE cty_company_id = ".$_GET['cmp']." AND EXISTS (SELECT cu_cmp_id FROM ".DB_COMPANY_USERS." WHERE cu_cmp_id = ".$_GET['cmp']." AND cu_usr_id = $user_id) AND EXISTS (SELECT ctus_user_id FROM scada_city_users WHERE ctus_user_id = $user_id AND ctus_city_id = cty_id)");

提前致谢!

最佳答案

有一种简单的方法可以告诉数据库它应该传送 UTF-8 编码的字符串。只需告诉您的连接对象您期望使用哪种字符集,数据库就会为您完成剩下的工作。

$db = new mysqli($dbHost, $dbUser, $dbPw, $dbName);

// tell the db to deliver UTF-8 encoded strings.
$db->set_charset("utf8");

排序规则只定义了两个条目应该如何比较,它与定义字符集不同。您的 HTML 页面也应该是 UTF-8 编码的,您可以在此处找到更多信息 here .

关于php - UTF8 读取波斯字符串为 ?在 MySQL 5.0 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11271628/

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