我正在设置一个新服务器,并希望在我的Web应用程序中完全支持UTF-8.我过去曾在现有的服务器上尝试过此操作,但最终似乎不得不回归ISO-8859-1.
我在哪里需要设置编码/字符集?我知道我需要配置Apache,MySQL和PHP来执行此操作 - 是否有一些我可以遵循的标准清单,或者可能是在出现不匹配的地方进行故障排除?
这适用于运行MySQL 5,PHP,5和Apache 2的新Linux服务器.
table 'abc' data :
tid title
1 ????????????? ?.
2 ?????? ??????
$sql=mysql_query("select title from abd where tid='1'");
$row=mysql_fetch_array($sql);
$title = $row['title'];
echo $title;
Run Code Online (Sandbox Code Playgroud)
????????????????
Run Code Online (Sandbox Code Playgroud)
????????????? ?.
Run Code Online (Sandbox Code Playgroud)
<?php
mysql_query ("set character_set_results='utf8'");
$sql=mysql_query("select title from abd where tid='1'");
$row=mysql_fetch_array($sql);
$title = $row['title'];
echo $title;
?>
Run Code Online (Sandbox Code Playgroud) 我有一个带有一个文本框的表单(ProductTitle)
如果我在文本框中编写示例"Étuit"并单击"保存",则将数据发布在名为"产品"的表中.ProductTitle数据库中的结果是τtuit.我关注的是特殊性格.而不是把É放在数据库中,我得到了É
当我将数据库中的产品标题("ttuit")加载到跨度中时.这表明正确.
但是当我在文本框中加载它以编辑产品标题时,显示Étuit.
有人知道为什么.
我把它放在HTML头中
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Run Code Online (Sandbox Code Playgroud)
注意:当我单击表单上的"保存"时,将使用jquery ajax方法发布数据.
我正在使用htmlentities将商标符号转换为htmlentity,但它正在给我â?¢.难道我做错了什么
这是我的代码
<?php echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0" xmlns:c="http://www.base.google.com/cns/1.0">
<channel>
<title>Spray Foam Systems</title>
<link>http://www.sprayfoamsys.com/store/</link>
<description>Spray Foam Rigs, Spray Foam Equipment, Sprayfoam Parts and Supplies.</description>
<?php
$con = mysql_connect(REMOVED) or die(mysql_error());
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("sprayfoa_store", $con);
mysql_query("SET NAMES 'utf8'", $con);
$query = mysql_query("SELECT * FROM `catalog_product_flat_1` WHERE `visibility` = 4 ORDER BY entity_id asc")
or die(mysql_error());
?>
<?php
while($row = mysql_fetch_array($query))
{
?>
<item>
<g:id><?php echo …Run Code Online (Sandbox Code Playgroud)