2

下面的查询在我提供我想要找到匹配项的值时返回我想要的数据,但是,在最后使用 echo 语句返回数据时我似乎遇到了困难:

$conn = mysqli_connect($host,$username,$password, $database) or die (mysql_error ());

$searched=$_POST['searched'];
$sound = soundex($searched);

$sql = "SELECT * FROM word_list WHERE sound = '$sound';";
$result = mysql_query($conn,$sql);
while($row = mysql_fetch_array($result)) {
echo $row['word'] . ':' . $row['sound'] . '<br />';
}
mysqli_close($conn);

?>

浏览器中的输出是一个空白页面(没有记录错误等)。当我 var_dump 输入时,我得到了正确的 soundex 值;我不确定我在哪里忽略了一些东西,如上所示,尝试了一些我在另一个线程中看到的东西。

'string(4) "A000"' 是 var_dump 的结果。正如我所解释的,当我使用“A000”代替我的 $sound 变量时,查询在 MySQL 中成功,并返回具有匹配 soundex 值的单词列表(存储在名为“sound”的列中),但我可以似乎无法在浏览器中读取它。

4

1 回答 1

1

尝试使用 mysqli_query 而不是 mysql_query。我认为 mysqli_connect 返回一个对象,而 mysql_query 需要一个字符串。

于 2013-06-01T22:16:24.340 回答