SQLITE3 Select запросы

328
07 августа 2017, 13:28

Всем Привет.

Имеется данный кусок кода который собирает информацию о приложении и отправляет ее клиенту по websocket.

Проблема заключается в этом куске кода:

        // Всего пользователей
        var count_user_ = 0;
        db.each("SELECT COUNT(id) as cnt FROM `vk_app_all_visits` WHERE `id_app`=?", [ row.id_app ], function(err, rows) {
            count_user_ = rows.cnt;
        });

После выполнения данного куска кода в результате получим count_user_ который равен 0. Если добавить console.log в db.each, то получим нужный результат. Такое чувство что переменная объявлена не через var, а через let которая будет видна именно в том блоке, где объявлена.

db.serialize(function() {
    var response = [];
    db.each("SELECT id, title, id_app, (SELECT COUNT(id) FROM `vk_app_sender_app` WHERE `uid`=?) as count FROM `vk_app_sender_app` WHERE `uid`=?;", [uid, uid], function(err, row) {
        var count = row.count;
        if(count > 0) {
            var title = row.title;
            // Урезаем название приложения
            title = title.substring(0, ((title.length >= 30) ? title.length-3 : title.length ))
            if(title.length >= 30) title = title + "...";
            // Всего пользователей
            var count_user_ = 0;
            db.each("SELECT COUNT(id) as cnt FROM `vk_app_all_visits` WHERE `id_app`=?", [ row.id_app ], function(err, rows) {
                count_user_ = rows.cnt;
            });
            response.push({id: row.id, title: title, idapp: row.id_app, count_user: count_user_});
        }
    }, function complete(err, found) {
        if(found == 0) {
            returning = {action: "vk_sender", type:"getappuser", status: 0};
        }
        if(found > 0) {
            returning = {action: "vk_sender", type:"getappuser", status: 1, info: response};
        }
        ws.send (JSON.stringify(returning));
    });
});

Как правильно получить количество записей в таблице vk_app_all_visits в данном случае?

READ ALSO
tinymce Не работает ввод текста

tinymce Не работает ввод текста

ЗдравствуйтеПодключила редактор tinymce

420
Почему мой цикл for … in не работает правильно?

Почему мой цикл for … in не работает правильно?

Я уже несколько часов ломаю себе голову, не могу понять почему мой код не работает правильноВ общем моя цель чтобы при клике на главной странице,...

378
Как вывести значение поля properties в админку?

Как вывести значение поля properties в админку?

Добрый день! Пытаюсь добавить кастомное поле в админку и вывести туда значение сохраненное в БД в поле 'properties'В файл assets\components\tickets\js\mgr\comment\comment

338
Почему последний alert даёт false?

Почему последний alert даёт false?

Потому что DogAbanis barking !== Dog Aban is barking :)

304