Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检查mysql数据库中是否存在希伯来语查询返回false_Php_Mysql_Database_Where_Hebrew - Fatal编程技术网

Php 检查mysql数据库中是否存在希伯来语查询返回false

Php 检查mysql数据库中是否存在希伯来语查询返回false,php,mysql,database,where,hebrew,Php,Mysql,Database,Where,Hebrew,所以我的问题是这样的: 我有一个mysql数据库,其中包含希伯来语信息,每行有一列名为“name” 当我向服务器发送一个希伯来语查询(通过submit-GET)时,我要求php页面查找名称与该查询相等的行 服务器就是找不到它,即使它在那里 如果我正在寻找英语查询(即在数据库中),服务器会找到它,并从数据库中写入有效信息。这些信息也是希伯来语 顺便说一句,我可以看到我发送的希伯来语查询很好 我现在并没有发布任何代码,但如果你不知道我能做什么(除了跳楼),请向我索要一个 好的,如你所问,这里有一些代

所以我的问题是这样的:

我有一个mysql数据库,其中包含希伯来语信息,每行有一列名为“name”

当我向服务器发送一个希伯来语查询(通过submit-GET)时,我要求php页面查找名称与该查询相等的行

服务器就是找不到它,即使它在那里

如果我正在寻找英语查询(即在数据库中),服务器会找到它,并从数据库中写入有效信息。这些信息也是希伯来语

顺便说一句,我可以看到我发送的希伯来语查询很好

我现在并没有发布任何代码,但如果你不知道我能做什么(除了跳楼),请向我索要一个

好的,如你所问,这里有一些代码:

<?php
$one=mysql_connect("localhost","xxx","PASSWORD");
mysql_query("SET CHARACTER SET 'hebrew'");
if(!$one)die('An error has occured.');
else{
mysql_select_db("xxx_db", $one);
$two=strtolower($_GET[SearchQuery]);
$three=mysql_query("SELECT * FROM xxx_table
WHERE name='$two'");
$four=mysql_fetch_array($three);
if($four)echo 'found';
else echo 'not found';
mysql_close($one);}
?>

数据库或表的编码与页面的编码不同。浏览器以页面设置的编码(可能是utf-8?)发送数据,但要么您的数据库以其他方式存储数据(可能是utf-16?),要么mysql客户端正在进行双重转换。
您的MySQL上有哪些设置?
跑

看看发生了什么。
另外,您使用的是LIKE还是mysql全文索引?

很难说没有看到代码,但我怀疑这可能是字符编码问题。我在过去遇到过类似的问题,比如一个包含非ascii字符的地名的表。有很多页面提供了将MySQL数据库设置为unicode友好型的建议,例如:


如果你没有发布任何代码,你怎么可能期望人们知道呢?页面的编码是什么?如果数据库是utf-8,而页面是utf-8,则不需要将字符集设置为希伯来语。我没有设置常规页面编码,因为当我将其设置为utf-8时,出于某种原因,我只会得到gibrish@德维沃尔科克,那是什么?你没有设定并不意味着它没有设定。如果你读的是希伯来语,它可能是utf-8或windows-1255。如果是windows-1255,请帮自己一个忙,使用utf-8将应用程序移动到unicode。
SHOW VARIABLES LIKE 'char%';