#php #javascript #jquery #ajax #json
Есть ajax запрос в js файле на выполнение скрипта php. Результат выполнения нужно
вывести в консоль в виде:
Фамилия1 Имя1 Счёт1
Фамилия2 Имя2 Счёт2
Но по ходу выполнения моего кода выходит это:
Фамилия1 |
Имя1 |
Счёт1 |
Фамилия2 |
Имя2 |
Счёт2 |
Запрос ajax:
var tutajax = $.ajax("dobavl.php")
.done(function(data) {
console.log(data);
})
.fail(function() {
console.log("ne ochen");
});
Код PHP:
\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "\t
\n";
foreach ($line as $col_value) {
echo "\t\t $col_value | \n";
}
echo "\t
\n";
}
echo "\n";
mysql_free_result($result);
mysql_close($link);
?>
Ответы
Ответ 1
Вариант 1. Переделать код PHP, чтобы он возвращал данные в нужном формате/виде.
Вариант 2. Не переделывать код PHP:
var tutajax = $.ajax("dobavl.php")
.done(function(data) {
$(data).find("tr").each(function() {
var rowValues = [];
$(this).find("td").each(function(){
rowValues.push($(this).text());
});
console.log(rowValues.join(" "));
});
})
.fail(function() {
console.log("ne ochen");
});
Ответ 2
Вариант 1:
Можно задать порядок выборки полей в запросе:
$query = 'SELECT field1, field2, field3 FROM records';
Где, field1 - имя, field2 - фамилия, field3 - целое число
Тогда при выводе полей в цикле будет определяться последовательность полей так, как
ты их задал в запросе
Вариант 2:
При выводе ассоциативного массива указывать поля:
echo "
\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "\t\n";
echo "\t\t" . $line['field1'] . " | \n";
echo "\t\t" . $line['field2'] . " | \n";
echo "\t\t" . $line['field3'] . " | \n";
echo "\t
\n";
}
echo "
\n";
Комментариев нет:
Отправить комментарий