如何在php中查询包含特殊字符(è,d',è)的mysql?

如何在php中查询包含特殊字符(è,d',è)的mysql?,sql,special-characters,Sql,Special Characters,我有一个包含法语单词的文件,我将该文件编码为Latin-1 uft-8不起作用,将该文件加载到MySQL中的一个表中。我需要$\u从网页上发布输入名称,并使用该名称从MySQL进行查询。我的代码如下: $name = "d' évaluation perfomance académique"; $sql = "SELECT * FROM application WHERE `Description` = '".$name."'"; 对于普通名称,它可以工作。但如果名称包含è,d',è,则无法工

我有一个包含法语单词的文件,我将该文件编码为Latin-1 uft-8不起作用,将该文件加载到MySQL中的一个表中。我需要$\u从网页上发布输入名称,并使用该名称从MySQL进行查询。我的代码如下:

$name = "d' évaluation perfomance académique";
$sql = "SELECT * FROM application WHERE `Description` = '".$name."'";
对于普通名称,它可以工作。但如果名称包含è,d',è,则无法工作

有什么建议吗


谢谢

假设您的PHP文件是UTF-8格式的,我相信以下方法可以奏效:

$name = "d' évaluation perfomance académique";
$sql = "SELECT * FROM application WHERE `Description` = '".$name."'";
$sql_latin1 = iconv("UTF-8","ISO-8859-1",$sql);

请尝试URLEncoder.encodeé,UTF-8,并告诉我它产生了什么。php iconv函数将把一个字符集转换为另一个。的可能重复。重复,因为它详细说明了PHP如何处理数据库中的字符,它需要先预处理字符。在我看来,这和Q不一样。通过使用urlenocdeé、UTF-8,é编码为%C3%A9…?@cybermonkey请不要回答重复的问题。此解决方案不包含在所谓的重复中。我的答案回答了此问题。虽然你的答案确实回答了这个问题,但不允许回答重复的问题。这两个问题都涉及字符编码,而且两个答案都是正确的。谢谢你的建议。但它仍然不能工作$名称=评估绩效学院$名称\代码=iconvUTF-8,ISO-8859-1,$name$sql=从应用程序中选择*,其中Description='.$name';仍然不能得到正确的结果。