javascript — Получить node.js для выполнения локального файла .php внутри pollingLoop.

Коротко вот цель моего приложения.

У меня есть файл PHP, который читает данные через соединение ODBC и записывает их в локальную базу данных.

Этот PHP-файл необходимо запускать локально на сервере каждый раз, когда цикл обрабатывается на моем сервере node.js, socket.io.

Моя установка — Apache, PHP 5.5.12 и node.js.

Я был почти уверен, что есть простой способ, но мне не повезло получить Ajax или что-то подобное для работы внутри node.js, следуя другим руководствам.

Код, в котором должен обрабатываться файл, выглядит следующим образом.

var pollingLoop = function () {
// Update the local database
// HERE I WANT THE PHP FILE TO EXECUTE

// Make the database query
var query = connection.query('SOME LONG SQL QUERY IN HERE'),
status = []; // this array will contain the result of our db query

// set up the query listeners
query
.on('error', function(err) {
// Handle error, and 'end' event will be emitted after this as well
console.log( err );
updateSockets( err );
})
.on('result', function( runningstatus ) {
// it fills our array looping on each runningstatus row inside the db
status.push( runningstatus );
})
.on('end',function(){
// loop on itself only if there are sockets still connected
if(connectionsArray.length) {
pollingTimer = setTimeout(pollingLoop, POLLING_INTERVAL);
updateSockets({status:status});
}
});
};

Я полностью в курсе, пытаясь это сделать?

0

Решение

Попробуйте вызвать php через интерфейс оболочки:

var exec = require("child_process").exec;
app.get('/', function(req, res){exec("php index.php", function (error, stdout, stderr) {res.send(stdout);});});

ИЛИ ЖЕ эта ссылка

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector