繁体   English   中英

使用angularjs将记录插入mysql数据库

[英]insert a record to mysql database using angularjs

我希望使用angularjs在mysql表中插入一条记录。 表:产品product_id,名称,描述。

我希望有两个文本字段和一个保存按钮,并在单击保存按钮记录时应插入mysql表。 我提到了以下链接:

但都是徒劳的......

的index.html

    <html ng-app>
    <head>
        <script src="../angular-1.0.1.min.js"></script>
        <script src="js/controllers.js"></script>
    </head>
    <body>
    <ul ng:controller="ProductListCtrl">
        <li ng:repeat="product in products">
            {{product.name}}
        </li>
    </ul>
    <form method = 'post'>
        Name : <input type = 'text' name = 'txtName'/>
        Description : <input type = 'text' name = 'txtDescription'/>
        <button ng:click="saveProduct()">New Product</button>
        <div id="content">
            <ng:view></ng:view>
        </div>
    </form>
    </body>
</html>

我在哪里写saveProduct()方法,我应该在其中写什么?

我应该怎么做从angularjs在mysql中添加记录?

AngularJS是一个客户端MV *框架。 大多数客户端框架都期望关于DOM操作的决定留给他们,他们只是从服务器端提供数据。

在您的情况下,这些数据将存储在MySQL中,您必须通过PHP检索并为您的数据库编写一个简单的RESTful接口。 在你的角度代码中,假设您的PHP restful端点就像

http://mywebsite.com/api/product

如果通过ng-resource进行简单的POST调用,则相当于在数据库上进行保存。 有关如何进行此设置的详细信息,您可以查看一些浮动的ng-resource示例。

您的保存产品方法应包含$http.post方法,如下所示

$http.post('/api/products', $scope.form).

在html中定义表单如下

<input ng-model="form.txtName" type="text" name="txtName" /> <input ng-model="form.txtDescription" type="text" name="txtDescription" />

您需要使用PHP代码为/api/products定义REST API, $http.post方法会将json发送到服务器

很难给出ganaraj解释的完整代码,因为它涉及服务器和客户端代码。

在客户端,您应该在控制器中编写一个saveProduct()函数/方法...从那里您可以直接发送HTTP请求(例如使用$ http对象,内置于angularJS)或编写一个Angular Service,将使用$ http或$ resource发送请求(我个人觉得$ http更容易理解)。 然后必须在控制器中注入服务,以便控制器可以调用其(服务)saveProduct()方法。

您肯定需要的是服务器端的REST接口/ Web服务API。 Web服务“获取”传入的HTTP请求,然后执行某种服务器端功能,将实际的SQL语句发送到您的数据库以保存产品。

通常没有SQL代码直接从客户端发送到服务器。 实际上我甚至不确定这是可能的......当你使用Java来让你的编程语言与数据库通信时,你需要一些“介于”之间的软件,比如JDBC。 据我所知,AngularJS不存在任何类型,因为常用的架构/设计模式是使用REST服务/ Web服务API。

如果您在服务器端使用PHP,以下链接可能会对您有所帮助(它解释了如何设置简单的REST API):

使用PHP创建简单的REST API

我发现此链接对于如何实现Controller和Service以将HTTP请求发送到服务器很有用:

在AngularJS中使用$ http发布表单数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM