HTML5页面连接mysql数据库和node.js
我尝试了Joel的解决方案,但出现了一些错误。谁能告诉我哪里出了问题 app.jsHTML5页面连接mysql数据库和node.js,mysql,html,node.js,Mysql,Html,Node.js,我尝试了Joel的解决方案,但出现了一些错误。谁能告诉我哪里出了问题 app.js var app = require('http').createServer(handler) , io = require('socket.io').listen(app) , fs = require('fs') , mysql = require('mysql') var client = mysql.createConnection({ host: 'localhost', user:
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
, fs = require('fs')
, mysql = require('mysql')
var client = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
});
client.connect();
app.listen(3232);
function handler (req, res) {
fs.readFile(__dirname + '/index.html',
function (err, data) {
if (err) {
res.writeHead(500);
return res.end('Error loading index.html');
}
res.writeHead(200);
res.end(data);
});
}
io.sockets.on('connection', function (socket) {
socket.on('login', function(usr, pass){
var TEST_DATABASE = 'mysqltest';
var TEST_TABLE = 'users';
client.query('USE '+TEST_DATABASE);
client.query('SELECT name FROM '+TEST_TABLE+' WHERE user = "'+usr+'" AND password = "'+pass+'"', function(err, results) {
if (err) throw err;
console.log(results[0]); // [{1: 1}]
socket.emit('retuLogIn',results[0]['name']);
});
});
socket.on('disconnect', function(){
console.log('Server has disconnected');
});
});
index.html
我不明白问题出在哪里。我已经检查了mysql模块的安装情况
请帮忙解决这个问题。@Chandan,
我(短暂地)犯了同样的错误
YMMV。
如果您在不更新mysql模块的情况下发现了问题,请通知我们。@Chandan,
我(短暂地)犯了同样的错误
YMMV。
如果您在不更新mysql模块的情况下解决了这个问题,请通知我们。@hvgotcodes正如OP所说,
app.js:6 var client=mysql.createConnection({^TypeError:Object#在Object上没有方法“createConnection”。
错误在app.js:6 var client=mysql.createConnection中({^TypeError:Object#没有“createConnection”方法。有人能帮我找出解决问题的方法吗?很紧急。@hGotCodes正如OP所说,app.js:6 var client=mysql.createConnection({^TypeError:Object#在Object上没有“createConnection”方法。
错误在app.js:6 var client=mysql.createConnection中({^TypeError:Object#没有“createConnection”方法。有人能帮我找到解决问题的方法吗?很紧急。嗨,Ignaseo,谢谢你的回复。在用alpha3更新mysql模块后,你的建议对我有效。有一件事服务器在我的浏览器第一次刷新后工作,另一件事不工作。有没有办法调试我的.js代码?这个答案帮助了我。我在Ubuntu上使用带RailwayJS的MySQL,更新MySQL包解决了这个问题。嗨,Ignaseo,谢谢你的回复。在用alpha3更新MySQL模块后,你的建议对我有效。有一件事服务器在我的浏览器第一次刷新后工作,其他方面都不工作。有没有办法调试我的浏览器.js代码?这个答案帮助了我。我在Ubuntu上使用MySQL和RailwayJS,更新MySQL包修复了这个问题。
<html>
<title>WebSocket Client Demo [socket.io]</title>
<script src="http://localhost:3232/socket.io/socket.io.js"></script>
<script>
function connect() {
try
{
var socket = io.connect('http://localhost:3232/');
socket.on("connect",function(){
document.getElementById('status').innerHTML ="Browser has connected to the app server";
socket.emit('login', document.getElementById('txtUser').value,
document.getElementById('txtPass').value);
});
socket.on('retuLogIn', function (data) {
document.getElementById('status').innerHTML = 'Welcome '+data;
});
}
catch(err)
{
document.getElementById('status').innerHTML = err.message;
}
}
</script>
<body>
<h1>WebSocket Client Demo</h1>
<div><p id="status">Enter user and password to Log-In</p></div>
<label>User :</label>
<input id="txtUser" type="text" maxlength="10" />
<label>Password :</label>
<input id="txtPass" type="text" maxlength="10" />
<button id="connect" onClick='connect()'/>Log-In</button>
</body>
</html>
C:\Program Files (x86)\nodejs>node "C:\Program Files (x86)\nodejs\app.js" info - socket.io started
C:\Program Files (x86)\nodejs\app.js:6 var client = mysql.createConnection({ ^ TypeError: Object # has no method 'createConnection' at Object. (C:\Program Files (x86)\nodejs\app.js:6:24) at Module._compile (module.js:449:26) at Object..js (module.js:467:10) at Module.load (module.js:356:32) at Function._load (module.js:312:12) at module.js:487:10 at EventEmitter._tickCallback (node.js:238:9)
C:\Program Files (x86)\nodejs>
TypeError: Object #<Object> has no method 'createConnection'
npm install mysql@2.0.0-alpha3