2016-05-31 29 views
2

我正在爲MySQL使用node.js的node-mysql驅動程序。我寫了這個代碼廢料HTML上的MySQL MySQL連接頁面

var mysql = require("mysql"); 
    var connection = mysql.createConnection({ 
     host  : "localhost", 
     user  : "root", 
     password : "", 
     database : "story" 
    }); 
    function testQuery() { 
     connection.query("INSERT INTO stories (TITLE, AUTHOR, STORY) VALUES   
     (\"hello\",\"goodbye\",\"sayonara\")", function(err,rows){ 
      if(err) throw err; 
     } ) 
     return; 
    } 

所以,當我在node.js的命令行testQuery()函數運行的代碼,它工作正常插入你好再見,再見到MySQL數據庫。但是,當我把腳本放入一個HTML頁面並且有一個按鈕onclick run testQuery()我沒有得到任何結果。

+2

在瀏覽器中運行不同於在Node中運行。 –

+1

'node-mysql'是一個服務器端組件。在這種情況下,服務器建立在'node.js'上 – Serge

回答

0

你正試圖在客戶端上運行Nodejs服務器代碼,這是行不通的。此外,這意味着您將立即被黑客入侵,因爲您的密碼以加密的純文本格式存儲並存儲在客戶端計算機上。雙號不。您必須啓動一個新的節點實例並從服務器(而不是瀏覽器)提供此代碼。