當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
AngularJS快速入门指南09:SQL
生活随笔
收集整理的這篇文章主要介紹了
AngularJS快速入门指南09:SQL
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
我們可以將之前章節(jié)中的代碼用來從數(shù)據(jù)庫中讀取數(shù)據(jù)。
通過PHP Server從MySQL數(shù)據(jù)庫中獲取數(shù)據(jù)
<div ng-app="myApp" ng-controller="customersCtrl"> <table><tr ng-repeat="x in names"><td>{{ x.Name }}</td><td>{{ x.Country }}</td></tr> </table></div><script> var app = angular.module('myApp', []); app.controller('customersCtrl', function($scope, $http) {$http.get("http://customers_mysql.php").success(function (response) {$scope.names = response.records;}); }); </script>通過ASP.NET Server從MSSQL數(shù)據(jù)庫中獲取數(shù)據(jù)
<div ng-app="myApp" ng-controller="customersCtrl"> <table><tr ng-repeat="x in names"><td>{{ x.Name }}</td><td>{{ x.Country }}</td></tr> </table></div><script> var app = angular.module('myApp', []); app.controller('customersCtrl', function($scope, $http) {$http.get("http://customers_sql.aspx").success(function (response) {$scope.names = response.records;}); }); </script>服務(wù)器代碼示例
下面幾小節(jié)列出了幾種不同的服務(wù)器端代碼,用來從數(shù)據(jù)庫中獲取數(shù)據(jù)。
1. 使用PHP和MySQL。返回JSON數(shù)據(jù)。
2. 使用PHP和MS Access。返回JSON數(shù)據(jù)。
3. 使用ASP.NET,VB和MS Access。返回JSON數(shù)據(jù)。
4. 使用ASP.NET,Razor和SQL Lite。返回JSON數(shù)據(jù)。
跨站HTTP請(qǐng)求
從不同的服務(wù)器請(qǐng)求數(shù)據(jù)被稱為跨站HTTP請(qǐng)求(即cross-site HTTP requests)。
跨站HTTP請(qǐng)求在web開發(fā)中很普遍。許多頁面常常需要從不同的服務(wù)器加載各種資源,如CSS,images和scripts等。
在現(xiàn)代瀏覽器中,出于安全考慮,通過腳本進(jìn)行跨站HTTP請(qǐng)求被嚴(yán)格限制,只允許訪問同一站點(diǎn)內(nèi)的數(shù)據(jù)。
下面這行代碼被用在PHP中,用來允許跨站HTTP請(qǐng)求。
header("Access-Control-Allow-Origin: *");1. 使用PHP和MySQL
<?php header("Access-Control-Allow-Origin: *"); header("Content-Type: application/json; charset=UTF-8");$conn = new mysqli("myServer", "myUser", "myPassword", "Northwind");$result = $conn->query("SELECT CompanyName, City, Country FROM Customers");$outp = ""; while($rs = $result->fetch_array(MYSQLI_ASSOC)) {if ($outp != "") {$outp .= ",";}$outp .= '{"Name":"' . $rs["CompanyName"] . '",';$outp .= '"City":"' . $rs["City"] . '",';$outp .= '"Country":"'. $rs["Country"] . '"}'; } $outp ='{"records":['.$outp.']}'; $conn->close();echo($outp); ?>2. 使用PHP和MS Access
<?php header("Access-Control-Allow-Origin: *"); header("Content-Type: application/json; charset=ISO-8859-1");$conn = new COM("ADODB.Connection"); $conn->open("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb");$rs = $conn->execute("SELECT CompanyName, City, Country FROM Customers");$outp = ""; while (!$rs->EOF) {if ($outp != "") {$outp .= ",";}$outp .= '{"Name":"' . $rs["CompanyName"] . '",';$outp .= '"City":"' . $rs["City"] . '",';$outp .= '"Country":"'. $rs["Country"] . '"}'; $rs->MoveNext(); } $outp ='{"records":['.$outp.']}';$conn->close();echo ($outp); ?>3. 使用ASP.NET,VB和MS Access
<%@ Import Namespace="System.IO"%> <%@ Import Namespace="System.Data"%> <%@ Import Namespace="System.Data.OleDb"%> <% Response.AppendHeader("Access-Control-Allow-Origin", "*") Response.AppendHeader("Content-type", "application/json") Dim conn As OleDbConnection Dim objAdapter As OleDbDataAdapter Dim objTable As DataTable Dim objRow As DataRow Dim objDataSet As New DataSet() Dim outp Dim c conn = New OledbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=Northwind.mdb") objAdapter = New OledbDataAdapter("SELECT CompanyName, City, Country FROM Customers", conn) objAdapter.Fill(objDataSet, "myTable") objTable=objDataSet.Tables("myTable")outp = "" c = chr(34) for each x in objTable.Rows if outp <> "" then outp = outp & "," outp = outp & "{" & c & "Name" & c & ":" & c & x("CompanyName") & c & "," outp = outp & c & "City" & c & ":" & c & x("City") & c & "," outp = outp & c & "Country" & c & ":" & c & x("Country") & c & "}" nextoutp ="{" & c & "records" & c & ":[" & outp & "]}" response.write(outp) conn.close %>4. 使用ASP.NET,Razor和SQL Lite
@{ Response.AppendHeader("Access-Control-Allow-Origin", "*") Response.AppendHeader("Content-type", "application/json") var db = Database.Open("Northwind"); var query = db.Query("SELECT CompanyName, City, Country FROM Customers"); var outp ="" var c = chr(34) } @foreach(var row in query) { if outp <> "" then outp = outp + "," outp = outp + "{" + c + "Name" + c + ":" + c + @row.CompanyName + c + "," outp = outp + c + "City" + c + ":" + c + @row.City + c + "," outp = outp + c + "Country" + c + ":" + c + @row.Country + c + "}" } outp ="{" + c + "records" + c + ":[" + outp + "]}" @outp 上一章 - AngularJS快速入門指南08:表格 下一章 - AngularJS快速入門指南10:DOM節(jié)點(diǎn)?
總結(jié)
以上是生活随笔為你收集整理的AngularJS快速入门指南09:SQL的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Zabbix Maintenance 维
- 下一篇: gradle idea java ssm