У меня есть DIV, в который я передаю данные в зависимости от разных вариантов на моей странице. Я добавляю эти значения в массив для создания запроса MYSQL. Когда страница загружает несколько пунктов MySQL установлена SELECT FROM JOIN ON LIMIT 1000
и больше значения может быть добавлено в промежутке между этими предварительно загруженными пунктами, чтобы добиться чего-то вроде:Array.length возвращает фиксированное значение
SELECT *
FROM abop_stats
JOIN call_outcome ON abop_stats.outcome_idfk = call_outcome.id
ORDER BY outcome_idfk ASC
LIMIT 1000
Перед страница грузила с 2 комплектами JOIN
& ON
статей так Я попытался написать оператор if, чтобы проверить длину запроса, и если он превысил определенную сумму, добавьте второй набор предложений.
Это не работает, поэтому я попытался console.log
мою длину массива и печатает фиксированное значение 16
на нагрузке и то же значение, когда параметры добавляются в DIV's
поэтому отображается запрос (HTML) не то же самое как один из console
(поскольку второй набор предложений MySQL не добавляется).
Мой код:
function query() {
var qry = [];
qry.push($('#select').html());
qry.push($('#selection').html());
qry.push($('#from').html());
qry.push($('#table').html());
qry.push($('#join').html());
qry.push($('#table2').html());
qry.push($('#on').html());
qry.push($('#tablejoin').html());
if (qry.length > 10) {
qry.push($('#join2').html());
qry.push($('#table3').html());
qry.push($('#on2').html());
qry.push($('#tablejoin2').html());
}
qry.push($('#precondition').html());
qry.push($('#column').html());
qry.push($('#condition').html());
qry.push($('#input').html());
qry.push($('#precondition2').html());
qry.push($('#column2').html());
qry.push($('#condition2').html());
qry.push($('#limiter').html());
var fullqry = qry.join(" ");
var length = qry.length;
console.log(qry.length);
console.log(fullqry);
return fullqry;
}
Почему мой array.length
дает статическое значение?
Что вы подразумеваете под статическим значением? – Kushal
Место, в котором вы выполняете проверку 'qry.length> 10', всегда терпит неудачу, потому что в это время массив будет иметь длину 8. Таким образом, они не будут добавлены в массив, что приведет к длине массива до 16. –
@VigneswaranMarimuthu Если я помещаю оператор If наверху, все еще загружается с 16, как бы это исправить? – user3062358