数据库中的波斯语单词有问题吗?

发布于 2024-12-02 10:34:52 字数 305 浏览 0 评论 0原文

为什么在数据库值日期中插入: شهريور

如何在数据库中搜索这个词(?)?

 In database: structure => date => varchar(255) => utf8_general_ci = "شهريور".

Why insert in database value date as: شهريور ?

How can search this word in database(شهريور)?

 In database: structure => date => varchar(255) => utf8_general_ci = "شهريور".

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

泪眸﹌ 2024-12-09 10:34:52

您的网站使用的编码中不存在这些字符,因此浏览器会发送 HTML 实体。

(在这里试试:http://codepad.viper-7.com/dfFMvW;此页面在 ISO-8859-1 中,如果您在输入中发送非 ISO-8859-1 字符,它们将作为 HTML 实体发送。)


为了避免这种情况,您必须使用不同的编码,例如 UTF-8。

在您的 标记中添加此标头:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />

或者在打印任何内容之前在 PHP 中执行此操作:

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

并确保您的数据库也使用 UTF-8。


您可以通过执行以下操作将数据库转换为 UTF-8:

ALTER DATABASE your_database CHARACTER SET utf8;
-- for each table:
ALTER TABLE some_table CONVERT TO CHARACTER SET utf8;

连接到数据库后,发送以下查询:

SET NAMES UTF8;

You website uses an encoding in which these characters do not exists, so the browser sends HTML entities instead.

(Try this here: http://codepad.viper-7.com/dfFMvW ; This page is in ISO-8859-1, if you send non-ISO-8859-1 characters in the input, they are sent as HTML entities.)


To avoid this you have to use a different encoding, like UTF-8.

Add this header in your <head> tag:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />

Or do this in your PHP before printing anything:

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

And make sure your database uses UTF-8 too.


You can convert your database to UTF-8 by doing this:

ALTER DATABASE your_database CHARACTER SET utf8;
-- for each table:
ALTER TABLE some_table CONVERT TO CHARACTER SET utf8;

And after you connect to the database, send this query:

SET NAMES UTF8;
寻找我们的幸福 2024-12-09 10:34:52

只要您有 UTF* 表,您就不需要对这些字符进行 html 转义,而且确实如此。

只需确保表是 UTF8、连接是 utf8、并且浏览器以 utf8 方式读取文本即可。

  • 对于 mysql,请参阅 SET CHARACTER SETSET NAMESSET COLLATION_CONNECTION
  • 对于 html 使用 以及相应的 http 标头(如果需要)

You dont need to html escape those characters as long as you have a UTF* table, and you do.

Simply make sure that the table is UTF8, that the connection is utf8, and the browser reads the texts as utf8.

  • for mysql see SET CHARACTER SET, SET NAMES, SET COLLATION_CONNECTION
  • for html use <meta content="text/html;charset=UTF-8" http-equiv="Content-Type" /> and the according http headers, if needed
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文