【问题标题】:encoding post information in php and storing it in DB在 php 中编码 post 信息并将其存储在 DB 中
【发布时间】:2013-05-09 21:31:21
【问题描述】:

所以我在数据库中存储信息时遇到了这个问题。我刚刚插入了原始帖子数据,并且像“Automātiskā”(在拉脱维亚语中)这样的词看起来像“Autom?tisk?”。然后我像这样编码我的所有数据:

 $data = array(
'marka' => utf8_encode($this->input->post('marka')), etc

(使用 CodeIgniter 开发)

现在“Automātiskā”出现为“AutomÄtiskÄ”和“Benzīns”如:“BenzÄ«ns”等。

我尝试了其他几种方法,例如添加 php 标头,但没有结果,只是错误。

我对所有这些编码内容感到困惑,并想了解将我的拉脱维亚字符放入数据库的最简单方法(我需要添加哪些代码行)。我搜索的所有信息都让我的头脑更加混乱。

另外,我是否需要将数据库“排序规则”字段设置为 UTF8_latvian_ci 或 UTF8_unicode_ci 之类的东西,因为默认情况下我有 latin1_swedish_ci 。

稍后我还需要在我的页面中显示该信息。我需要再做一些解码吗?也想听听。

谢谢!!

【问题讨论】:

    标签: php mysql codeigniter character-encoding


    【解决方案1】:

    确保在 php 中使用正确的 (utf-8) 标头,并且在 utf-8 中使用您的数据库,这样就可以了。

    header('Content-Type: text/html; charset=utf-8');
    

    对于您的数据库,我推荐:utf8_general_ci

    【讨论】:

    • 这是用于从数据库中输出信息的,我想...稍后会尝试。
    猜你喜欢
    • 1970-01-01
    • 2016-10-22
    • 2012-07-18
    • 1970-01-01
    • 2018-10-16
    • 2012-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多