Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите вывести массив данных.

Константин Ефименко Гуру (3721), закрыт 4 года назад
Когда сайт загружен, в select уже выводятся данные, это хорошо. Но когда, я нажимаю Enter в инпуте (введя предполагаемый вариант фильтрации), то список просто очищается и ничего не происходит.

Это основной файл:
<select class="left" size="24" multiple>
<?php
echo '<script type="text/javascript">',
'keyPressed();',
'</script>';
include('fio.php');
?>
</select>

Это внешне подключенный файл js:
function keyPressed() {
$('.Or-fio').on('keypress', function(e) {
if (e.which == 13) {
var fio = $('.Or-fio').val();
$.post("fio.php", "fio-str=" + fio, function (data) {
$('.left').html(data);
});
e.preventDefault();
}
});
}

Вот что содержится в "fio.php":
<?php
header("Content-Type: text/html; charset=UTF-8");
$fiostr = $_POST['fio-str'];
$sql = ("SELECT FIO FROM [MyDB] WHERE Fam = '$fiostr' OR Imy = '$fiostr' OR Otch = '$fiostr' ORDER BY Fam");
$result = sqlsrv_query($conn, $sql);
$data = '';
while(list($row) = sqlsrv_fetch_array($result)){
$data .= '<option data-num="" value="'.$row.'">'.$row.'</option>';
};
echo $data;
?>

В чём может быть ошибка? Помогите!!!
Лучший ответ
Фредерика Бернкастель Мудрец (10651) 4 года назад
Список очищается потому что либо php сдох от ошибки, либо данных нет.
Остальные ответы
Рекоммендации@Mail.ru Ученик (129) 4 года назад
Чтобы людям было легче понимать ваш вопрос, попробуйте:
-> объяснить названия ваших переменных, так легче читать код
-> объяснить то, чего вы хотите достичь (у вас описана только проблема)
-> если код написан только на HTML/CSS/JS, воспользуйтесь Plunker или repl.it.
Константин ЕфименкоГуру (3721) 4 года назад
"объяснить названия ваших переменных..."

Их нельзя объяснить, это просто переменные. Если вы не понимаете, что они делают и как взаимодействуют, то ваше место явно не в данной теме.

"...то, чего вы хотите достичь..."

Я хочу, чтобы jquery вывел в select, отфильтрованный в php список, по нажатию кнопки Enter, пока input находится в фокусе.

"...только на HTML/CSS/JS..."

Вы прекрасно видите из данного примера, что здесь так же используется PHP. Я так же использую переходящий HTML/XHTML. Меня абсолютно не интересуют готовые сайты.
Похожие вопросы