簡體   English   中英

如何在Knockout.js文件的javascript中創建MySQL數據庫連接?

[英]How to create a MySQL database connection in javascript of Knockout.js file?

我在MYSQL中創建了下表,並在Knockout.js中創建了一個文件。我希望我們通過變量pf在Knockout.js中輸入的數據應存儲在表“ PORTFOLIO”中。我要實現的數據庫連接是僅通過javascript。我嘗試在MYSQL和Knockout.js之間創建數據庫連接,但未成功。

 //TABLE
CREATE TABLE PORTFOLIO
  (
  ID INT NOT NULL,
  pf VARCHAR (255)
  );

File in Knockout.js

//View
    <h3>Portfolio</h3>
<form data-bind="submit: addpf">
Add Portfolio: <input data-bind="value: newpf" placeholder="Who needs to be added?" />
    <button type="submit">Add</button>
</form>

<ul data-bind="foreach: pf, visible: pf().length > 0">
    <li>
        <input type="checkbox" data-bind="checked: isDone" />
        <input data-bind="value: title, disable: isDone" />
        <a href="#" data-bind="click: $parent.removepf">Delete</a>
    </li> 
</ul>

You have <b data-bind="text: oldpf().length">&nbsp;</b> New Portfolios
<span data-bind="visible:  oldpf().length == 0"></span>


//ViewModel


function pf(data) {
        this.title = ko.observable(data.title);
        this.isDone = ko.observable(data.isDone);
    }

    function pfListViewModel() {
        // Data
        var self = this;
        self.pf = ko.observableArray([]);
        self.newpf = ko.observable();
        self.oldpf = ko.computed(function() {
            return ko.utils.arrayFilter(self.pf(), function(pf) { return !pf.isDone() });
        });

        // Operations
        self.addpf = function() {
            self.pf.push(new pf({ title: this.newpf() }));
            self.newpf("");

        };
        self.removepf = function(pf) { self.pf.remove(pf) };
    }

    ko.applyBindings(new pfListViewModel());

不,這是不可能的 ,JavaScript無法直接連接到MySQL。 但是您可以將JS與PHP混合使用,也可以將其與任何其他服務器端語言混合使用。

JavaScript是一種客戶端語言,您的MySQL數據庫將在服務器上運行。 這意味着您需要一種允許他們說的服務器端語言。 然后,您可以使用AJAX將數據提交到服務器。

另一個選擇是您可以使用BreezeJs,這將使您可以自由地進行以數據為中心的應用程序。 您可以查看此鏈接http://breeze.github.io/doc-js/ Breeze在淘汰賽中絕對可以正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM