Php 页面无法从 mysql 值中识别 "ø"

标签 php mysql

我有一个字段 $name (varchar(128)),其中有一个值“Pølse Mand”。

现在我希望它在值为“Pølse Mand”时打印一些特殊的东西

<?php 

if ($name=="Pølse Mand") { echo "123";};


?>

但由于某些原因,这不起作用。我还有另一个名为“文本框”的值,当我对它做同样的事情时它工作正常,所以一定是“ø”把事情搞砸了。

我假设我在 php 文件中的“ø”与值中的 ø 有某种不同,即使我已经尝试在 phpmyadmin 中一个字母一个字母地直接复制它。

MySQL连接排序规则是utf8_unicode_ci,表中的排序规则是latin1_swedish_ci。我试过:<meta http-equiv="Content-Type" content="text/html; charset=utf8_unicode_ci"/>和瑞典的,但它就是行不通。

最佳答案

您使用的是 MySql 还是 MySqli

对于 MySQL,在请求之前使用此代码:

mysql_set_charset ( 'latin7' );

或:

mysql_set_charset ( 'utf8' );

对于 MySQLi:

$mysqli -> set_charset ( 'latin7' ); //Change $mysqli to your variable name

或:

$mysqli -> set_charset ( 'utf8' );

至于<meta>标记,使用:

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

或:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-13"/>

尝试两种选择,找出最适合您的。

关于Php 页面无法从 mysql 值中识别 "ø",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6257668/

相关文章:

php - 第一个和第二个字符的正则表达式规则

javascript - 如果上传的图片名称包含.php.jpg

java - sql结果集无法返回结果集是什么原因?

php - 如何将插入数组值存储为单独的记录

php - "insert on duplicate update"仍然插入重复项

php - 更改 MySQL 数据库的字符集会导致 SELECT 问题吗?

php - 从 CSV 文件插入链接

mysql - SUM 金额字段不包含逗号、小数或负号 11 位前导零

mysql - 无法运行 PIG

php - 第 47 行警告 : mysql_query(): supplied argument is not a valid MySQL-Link resource in/home/vinem/www/batch/batch_stock. php