所以我有一個名爲「dbEmails.php」 PHP文件,它基本上會將所有現有的電子郵件從MySQL到一個數組:如何將PHP數組傳遞給NodeJS HTTP服務器?
<?php
require_once __DIR__ . '../db.php';
$sth = $dbh->query('SELECT email FROM users');
while($row = $sth->fetch(PDO::FETCH_ASSOC)){
$emails[] = $row['email'];
}
echo json_encode(array($emails));
我有一個用於驗證郵件是否已被註冊一個HTTP的NodeJS服務器或者不在註冊頁面。這裏是:
var http = require('http');
var querystring = require('querystring');
//var emails = array called "emails" from "dbEmails.php"
function accountExists (email) {
return emails.indexOf(email) > -1;
}
var server = http.createServer(function(req, res) {
var params = req.url.split('?')[1];
var data = querystring.parse(params);
var email = data.email;
res.statusCode = 200;
res.setHeader("Content-Type", "application/json");
res.setHeader("Access-Control-Allow-Origin", "*");
res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
if (accountExists(email)) {
res.write('""');
} else {
res.write('"true"');
}
res.end();
});
server.listen(6666);
正如你可以在代碼中看到的,我已經評論了我的問題是什麼。我需要從PHP獲得$emails
數組到JS的var emails
。
我搜索了一些,但找不到解決方案。我想我不應該使用AJAX,我根本不瞭解有關Node的任何信息。
怎麼去做這件事的最好方法?
問題2:
請問var emails
更新時自動出現在我的數據庫中的新電子郵件條目?我猜不會。如果它沒有更新,那麼有人可以告訴我應該如何保持我的var emails
最新?
你應該能夠找到一些例子來說明如何使用curl數據發送到一個http服務器,例如[1](http://stackoverflow.com/a/9065892/5781248)[2](http://stackoverflow.com/questions/2138527/php-curl-http-post-sample-碼) –