gpt4 book ai didi

php - 如何选择外语的mysql查询?

转载 作者:可可西里 更新时间:2023-11-01 07:31:20 24 4
gpt4 key购买 nike

让我用简单的方式告诉你

 SELECT * FROM dictionary WHERE malayalam = 'ആകാശം'

此查询在 phpmysql 上运行良好,同时在 .php 页面上查询时未检测到原始数据

我正在构建一个英语到马拉雅拉姆语和马拉雅拉姆语到英语的词典

网站是http://www.chatfitness.com/

在英文单词的基础上从 mysql 接收马拉雅拉姆语单词工作正常。

不幸的是,接收英文单词不能正常工作:(

我对这两个函数使用相同的查询这是用英文单词搜索的代码

if(isset($_GET['en']))
{
$english = $_GET['en'];
mysql_query ("set character_set_results='utf8'");
$result=mysql_query("SELECT * FROM en_table WHERE word = '$english' LIMIT 1");
$numrows=mysql_num_rows($result);

if($numrows!=0){
$row = mysql_fetch_array($result);
$english_id = $row['en_id'];

//select malayalam id which are matching with english id
$en_query = mysql_query("SELECT * FROM dictionary WHERE english = '$english_id'");
//$en_rows = mysql_fetch_array($en_query);

while($en_rows = mysql_fetch_array($en_query)){
$en_malayalam = $en_rows['malayalam'];
mysql_query ("set character_set_results='utf8'");
$ml_query=mysql_query("SELECT * FROM ml_table WHERE ml_id = '$en_malayalam'");
while($ml_rows = mysql_fetch_array($ml_query)){
echo $ml_rows['word'];
echo "<br />";
}

}

}else{
echo "<p>നിങ്ങള്‍ അന്വേഷിക്കുന്ന " . $english . " എന്ന പദത്തിന്റെ അര്‍ഥം കണ്ടെത്താനായില്ല.</p>
<p>സാധ്യമെങ്കില്‍, ദയവായി നിഘണ്ടുവില്‍ ചേര്‍ക്കുക.</p>";
}

与我使用马拉雅拉姆语搜索的方式相同

}elseif(isset($_GET['ml'])){
$malayalam = $_GET['ml'];
mysql_query ("set character_set_results='utf8'");
$results=mysql_query("SELECT * FROM ml_table WHERE 'word'= '$malayalam' LIMIT 1");

$numrow=mysql_num_rows($results);
echo $numrow ;

//here is the problem $numrow always zero :(
if($numrow!=0){
$row = mysql_fetch_array($results);
$malayalam_id = $row['ml_id'];
//echo $malayalam_id ;
//select malayalam id which are matching with english id
$ml_query = mysql_query("SELECT * FROM dictionary WHERE malayalam = '$malayalam_id'");
//$en_rows = mysql_fetch_array($en_query);

while($ml_rows = mysql_fetch_array($ml_query)){
$ml_english = $ml_rows['malayalam'];
$ml_query=mysql_query("SELECT * FROM en_table WHERE en_id = '$ml_english'");
while($ml_rows = mysql_fetch_array($ml_query)){
//echo $ml_rows['word'];
echo "<br />";
}
}
}else{
echo "We do not have meaning of $malayalam at the moment. <br /> Could you add your word pls";
}


}else{
die("please select search value");
}

我从 mysql 搜索什么 $numrow=mysql_num_rows($results); numrows 始终为零 :(你能帮我解决这个问题吗

我被困在这里了:(提前致谢

最佳答案

您应该尝试以下方法之一:

1.) 使用 mysql_set_charset('utf8', $dbconn); 而不是 mysql_query(),如 http://php.net/manual/en/function.mysql-set-charset.php 中所示

2.) 按照 SET NAMES utf8 in MySQL? 中的建议使用 query("set names utf8");

关于php - 如何选择外语的mysql查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9174881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com