数据库中的数据存储和检索

时间:2009-10-31 11:16:28

标签: php

在PHP中使用表单时我们输入的详细信息必须存储在数据库中...就像数据使用数据库中的任何编码方案存储一样... bcoz当我使用不同的语言,除了英语存储在数据库中显示了一些荒谬的代码...但是当我检索数据时...就像我在标准英语中一样... ...

3 个答案:

答案 0 :(得分:3)

您需要检查数据库中的字体encoding。同样适用于html。您还应该在encoding og deconding php strings上使用php manulal

答案 1 :(得分:2)

我认为'语言'实际上是指'character encoding'。请继续阅读The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)。它会为你(以及其他人)节省很多麻烦。

基本的是你必须在处理和存储的每个阶段都知道你的字符的编码,否则,你无法真正确保正确,可读的输出。

您的设置现在正常运行或多或少是一个幸运事件,但只要您从其他应用程序使用数据库(或更改当前应用程序处理字符串的方式),事情就会很快崩溃。

您希望确保数据库中的所有字符都使用相同的编码(最好是UNICODE版本之一)进行存储,以便您可以将它们可靠地转换为应用程序中可能需要的任何其他编码。

答案 2 :(得分:1)

使用不同的字符集有时会有点棘手,尤其是在应用程序和数据层之间处理数据时。网上有大量的教程/博客文章 - 快速谷歌“PHP MySQL UTF数据”带来了相当多的结果。但总结一下:

<强> PHP

PHP没有 native 非常好的Unicode支持尚未:使用第三部分扩展要好得多,其中MBString是最好的

MySQL

您需要确保正确设置表/列以支持UTF字符数据。这只是创建/更改相关列以使用UTF字符集的问题:

ALTER TABLE theTabel MODIFY formTextField VARCHAR(255) CHARACTER SET utf8

<强> HTML

最后,您需要确保使用正确的标题提供HTML

Content-type: text/html; charset=utf-8