好的,请跟我一起。我真的很擅长这个。我收到了一些朋友的帮助,他知道一些编码但是没有atm。
我有mysql数据库,其中包含存储在UTF8_general_ci
然后在wordpress中我有一个调用文件编号1 haku.php
的页面。内容如下:
<?php
$result = mysql_query("SELECT DISTINCT jalleenmyyja_postitp FROM jalleenmyyjat order by jalleenmyyja_postitp");
while($r = mysql_fetch_array($result)){
if ($r["jalleenmyyja_postitp"] != "")echo '<option value="'.$r["jalleenmyyja_postitp"] .'">'. $r["jalleenmyyja_postitp"] .'</option>';
}
?>
然后将它们放在下拉菜单中。到现在为止还挺好。然后,当在下拉列表中完成某些选择时,它应该返回结果,在该结果之下,文件编号为2,即下面的JS:
function haeyritys(x){
jQuery.ajax({
type: "POST",
url: "/yrityshaku.php",
data: "kaupunki=" + x,
success: function(data){
document.getElementById('selResult').innerHTML=data;
}
});
}
然后在此之后,文件号3.从数据库返回数据。
if($_REQUEST["kaupunki"] !=""){
$con = mysql_connect($host, $user, $pass);
mysql_select_db($db_name);
$result = mysql_query("select * from jalleenmyyjat where jalleenmyyja_postitp = '" . utf8_decode($_REQUEST["kaupunki"]) ."' order by jalleenmyyja_nimi");
if (mysql_num_rows($result) == 0){
echo '<div style="border-bottom:1px solid #ccc;padding:5px;"><b>Ei tuloksia...</b>';
}else{
while($r = mysql_fetch_array($result)){
if ($r["google"] != ""){echo '<a onclick="location.href=\'#top\'" href="'. $r["google"] .'" target="map">';}else{echo '<a onclick="location.href=\'#top\'" href="/eikarttaa.html" target="map">';}
echo '<div style="border-bottom:1px solid #ccc;padding:5px;"><b>' . $r["jalleenmyyja_nimi"] . '</b>';
if ($r["jalleenmyyja_osoite"] != "")echo '<br>' . $r["jalleenmyyja_osoite"];
if ($r["jalleenmyyja_postino"] !="" || $r["jalleenmyyja_postitp"] !="")echo "<br/>" . $r["jalleenmyyja_postino"] . " ". $r["jalleenmyyja_postitp"];
if ($r["jalleenmyyja_puh"] != "") echo "<br/>Puh: ". $r["jalleenmyyja_puh"];
if ($r["www"] != "")echo '<br/><a target="_blank" href="'.$r["www"].'">Verkkosivuille »</a>';
echo '</div>';
echo '</a>';
}
}
mysql_close($con);
}
?>
但是,外国字符是问号。如果我将mysql_set_charset('utf8');
添加到打开数据库连接的文件号3,结果会正确显示符号,但下拉列表中可能包含符号的数据不会返回结果!所以它是这样或那样的。
答案 0 :(得分:0)
如果您在网页上看到问号代替字符,浏览器可能不知道哪个字符集是正确的。您可以通过以下方法之一告诉浏览器使用哪个charset:
HTML5:
<meta charset="UTF-8">
HTML4:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
XHTML 1.x:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
XHTML 1.x as XML:
<?xml version="1.0" encoding="UTF-8"?>
元标记属于html文档的头部,应放在顶部附近(在&lt; head&gt;和&lt; / head&gt;之间)。如果不确定要使用哪一个,请使用html4来支持旧浏览器,如果支持现代浏览器就足够了html5。