AngularJS SQL
前の章のコードは、データベースのデータを読み取るためにも使用できます。
PHPを使用してMySQLからデータを取得します
AngularJSインスタンス
<!doctype html> <html> <head> <meta charset = "utf-8"> <script src = "http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"> </script> <style>、td {border:1px sol gray;国境崩壊:崩壊;パディング:5px;}テーブルTr:nth-child(odd){background-color:#f1f1f1;}テーブルTr:nth-child(veven){background-color:#ffffff;} </style> </head> <body> <body> <body> <div ng-app = "myapp" ng-controler = "customerctrl"> <tr <tr <> <td> {{x.name}} </td> <td> {{x.country}} </td> </tr> </table> </div> <scrip> angular.module( 'myApp'、[]); $ http.get( "/try/angularjs/data/customers_mysql.php").success(function(response){$ scope.names = respons.records;});}); </scrip> </body> </html>実行結果:
| Alfreds futterkiste | ドイツ |
| Ana Trujillo Emparedados y Heldos | メキシコ |
| アントニオ・モレノ・タケリア | メキシコ |
| ホーンの周り | 英国 |
| Bの飲み物 | 英国 |
| BerglundsSnabbköp | スウェーデン |
| BlauerはDelikatessenを参照してください | ドイツ |
| BlondelPèreetFils | フランス |
| ボリド・コミダの準備 | スペイン |
| ボンアプリ ' | フランス |
| ボトムドラーマーケット | カナダ |
| サボテンコミダパラルバル | アルゼンチン |
| Centro Comercial Moctezuma | メキシコ |
| チョップスーイー中国語 | スイス |
| ComércioMineiro | ブラジル |
ASP.NETでSQLを実行してデータを取得します
AngularJSインスタンス
<!doctype html> <html> <head> <meta charset = "utf-8"> <script src = "http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"> </script> <style>、td {border:1px sol gray;国境崩壊:崩壊;パディング:5px;}テーブルTr:nth-child(odd){background-color:#f1f1f1;}テーブルTr:nth-child(veven){background-color:#ffffff;} </style> </head> <body> <body> <body> <div ng-app = "myapp" ng-controler = "customerctrl"> <taple>名前 "> <td> {{x.name}} </td> <td> {{x.country}} </td> </tr> </table> </div> <script> var app = angular.module( 'myApp'、[]); $ http.get( "http://www.runoob.com/try/angularjs/data/customers_sql.aspx").success(function(response){$ scope.names = respons.restords.);});}); </script> </html>実行結果:
| Alfreds futterkiste | ドイツ |
| BerglundsSnabbköp | スウェーデン |
| Centro Comercial Moctezuma | メキシコ |
| エルンストヘンデル | オーストリア |
| Fissa Fabrica Inter。サルチチカスSA | スペイン |
| GaleríaDelGastónomo | スペイン |
| 島の取引 | 英国 |
| ケーニグリッヒエッセン | ドイツ |
| 笑いバッカスワインセラー | カナダ |
| Magazzini Alimentari Riuniti | イタリア |
| 北/南 | 英国 |
| パリスペシアリテ | フランス |
| Rattlesnake Canyon Grocery | アメリカ合衆国 |
| サイモンズビストロ | デンマーク |
| 大きなチーズ | アメリカ合衆国 |
| vaffeljernet | デンマーク |
| Wolski Zajazd | ポーランド |
サーバーコード
以下には、いくつかのサーバー側のコードタイプがリストされています。
PHPとMySQLを使用します。 JSONを返します。
PHPおよびMSアクセスを使用します。 JSONを返します。
ASP.NET、VB、およびMS Accessを使用します。 JSONを返します。
ASP.NET、Razor、およびSQL Liteを使用します。 JSONを返します。
クロスドメインHTTPリクエスト
異なるサーバー(異なるドメイン名)からデータを取得する必要がある場合は、クロスドメインHTTPリクエストを使用する必要があります。
クロスドメインのリクエストは、Webページで非常に一般的です。多くのWebページは、さまざまなサーバーからCSS、写真、JSスクリプトなどをロードします。
最新のブラウザでは、データセキュリティのために、すべての要求は同じドメイン名に厳密に制限されています。さまざまなサイトからデータを呼び出す必要がある場合は、クロスドメインを通じて解決する必要があります。
次のPHPコードは、クロスドメインアクセスのためにWebサイトを使用して実行されます。
ヘッダー( "Access-Control-allow-Origin: *");
より多くのクロスドメインアクセスソリューションについては、PHP AJAXクロスドメインの問題のための最良のソリューションを参照してください。
1。PHPおよびMySQLコードインスタンス
<?phpheader( "Access-control-allow-origin: *"); header( "content-type:application/json; charset = utf-8"); $ conn = new mysqli( "myserver"、 "myuser"、 "mypassword"、 "northwind"); ""; 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アクセスコードインスタンス
<?phpheader( "Access-control-allow-origin: *"); header( "content-type:application/json; charset = iso-8859-1"); $ conn = new com( "adodb.connection"); $ conn-> open( "provider = microsoft.jet.oledb.0; Data source = rs = $ conn-> execute( "select companyName、city、Country from Customers"); $ outp = ""; while(!$ rs-> eof){if($ outp!= ""){$ outp。= "、";} $ outp。= '{"name": ""'。$ rs ["company"]。 $ outp。= '"city": "'。$ rs [" city "]。 '"、'; $ outp。= '"country": "'。$ rs [" country "]。 '"}'; $ rs-> movenext();} $ outp = '{"records":['。$ outp。 ']}'; $ conn-> close(); echo($ outp);?>3。ASP.NET、VB、およびMSアクセスコードインスタンス
<%@ import namespace = "system.io"%> <%@ import namespace = "system.data"%> <%@ import namespace = "system.data.oledb"%> <%response.appendheader( "access-control-allow-origin"、 "*")respons.appender( "content-type") oledbdataadapterdimとしてobjtable objtable as databledim objrow as datarowdim objdataset as new dataset()dim outpdim cconn = new oledbconnection( "provider = microsoft.jet.oledb.4.0; data source = northwind.mdb")顧客から "、conn)objadapter.fill(objdataset、" mytable ")objtable = objdataset.tables(" mytable ")outp =" "c = chr(34)objtable.rowsif outp <>" "" anutp = outp& "、"& "&"& "&"& "&" X( "CompanyName")&c& "、" outp = outp&c& "city"&c& ":"&c&x( "city")&c& "、" outp = outp& "&c&": "&c&x(" country ")&c&"} "nextoutp ="&c& "&"& "&c&"& "&"& "&"& "&" "]}" respons.write(outp)conn.close%>
4。ASP.NET、VB Razor、SQL Liteコードインスタンス
@{Response.AppendHeader( "Access-Control-Allow-Origin"、 "*")respons.appendheader( "content-type"、 "application/json")var db = database.open( "northwind"); var query = db.query( "select companyname、City、from Country"); query){if outp <> "" then outp = outp + "、" outp = outp + "{" + c + "name" + c + ":" + c + @row.companyname + c + "、" outp + c + "city" + c + ":" + c + @row.city + " c + "}"} outp = "{" + c + "records" + c + ":[" + outp + "]}"@outp上記は、Angularjs SQL材料の編集です。後で追加し続けます。勉強する友達を助けることができることを願っています。