2013-06-01 8 views
2

Запрос в следующем возвращает данные, которые я хочу, когда я предоставляю значение. Я хочу найти соответствие, однако у меня, похоже, возникают трудности при возврате данных с помощью операторов эха на конец:Печать строк таблицы MySQL, соответствующих переменному вводу

$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; Я не уверен, где я что-то пропустил, как видно выше, пробовал несколько вещей, которые я видел в another thread.

«строка (4)« A000 »- результат var_dump. Как я объяснил, когда я использую «A000» вместо моей переменной звука $, запрос выполняется в MySQL и возвращает список слов с соответствующими значениями soundex (хранится в столбце под названием «звук»), но я могу ' t, похоже, считывает его как таковой в браузере.

+1

coooool! в первой строке вы используете «mysqli_connect», в 7 «mysql_query» :) – Eugen

+1

может быть, потому что у вас есть соединение mysqli, но вы используете mysql_query? попробуйте перейти на mysqli для всего вашего кода. –

+0

Blargh, спасибо. Вот и все. –

ответ

1

Попробуйте использовать mysqli_query вместо mysql_query. Я думаю, mysqli_connect возвращает объект, а mysql_query - строка.

+0

Спасибо. Я полностью забыл об этом. –

+0

Без проблем :) Всегда легче видеть чужие ошибки;) –