2012-04-10 9 views
1

私の場合は次のとおりです: 私は輸出し、フュージョンテーブルに挿入したMySQLデータベースを持っています。今度は、localhost dbではなくFusion Tableからデータをクエリする際にphpページを変更する必要があります。PHPからフュージョンテーブルを照会

私は、DevelopersガイドからFusion-Tablesのクエリについて読んだことがありますが、GData JavaライブラリとSQL APIを参照しています。別のサイトでは、PHPが依存しているZendフレームワークを含め、クエリに使用できる他のライブラリがあり、私の場合には関連しています。しかし、サンプルやチュートリアルでは、単純なセル、行、列をクエリして、どこに変更してコーディングを改善してデザインに適用できるかについてのPHPページを示しています。

私の質問は以下のとおりです。

  1. は、私はいくつかのライブラリのホスティングスペースにアップロード/インストールする必要がありますか?

  2. フュージョンテーブルのデータを照会するチュートリアル&のチュートリアルはありますか?

  3. ID 5の行のLatitude情報をどのように照会するかを教えてもらえますか? (ページは、パスを使用して取得されています?articles.php LANG = EN & PG = comm_en &メートル=ビュー& commID =以下

88でPHPから問い合わせる私はcomm_en.phpページを持っているコーディング、データをSQLに。

事前にありがとうございます!

Drini

<?php 
session_start(); 
foreach ($_REQUEST as $key => $value){ 
    $$key=addslashes(htmlspecialchars(strip_tags($value))); 
} 
if(isset($_GET["m"]))  {$m=$_GET["m"];}   else  {$m="";} 
if(isset($_GET["commID"]))  {$commID=$_GET["commID"];} else {$commID=1;} 
if(isset($_GET["lang"]))  {$lang=$_GET["lang"];} 
else {$lang="en";} 

Shfaq($m,$commID); 

function Shfaq($metod,$commID) 
{ 
switch($metod) 
{ 
case "view": 
     {View($commID);}   
    break; 
case "default": 
     {View($artID);}  
    break; 

} 
} // end of Shfaq(); 


function View($commID) 
{ 
    $link =mysql_connect("localhost", "db-user", "db-pass") or die ("E pamundur lidhja!"); 
mysql_select_db("DataBase-name") or die (mysql_error()); 
$queryComm = "SELECT * FROM communities WHERE id ='$commID' LIMIT 0,1"; 
$commRes=mysql_query($queryComm) or die(mysql_error()); 
$comm=mysql_fetch_array($commRes); 
$healthPerc = round(($comm["healthBooklet"]/$comm["totalChildNo"]), 3)*100 ; 

echo '  <table class="gpsbox" align="right"> 
     <caption>GPS Location</caption>     
     <tr><td>Latitude </td><td>'.$comm["latitude"].'</td></tr> 
     <tr><td>Longitude</td><td>'.$comm["longitude"].'</td></tr> 
    </table>....<html coding continues> 

答えて

0
  1. したい場合PHP client libraryがあり

    、あなたがそれを使用することができます(それはおそらくPHPからフュージョンテーブルにアクセスする最も簡単な方法です)

  2. 次のクライアントライブラリへPHP sample codeだけを見て、もあり、それはおそらく役立ちますあなたはその概念を理解する。あなたはライブラリを使用する場合

  3. 、あなたは単に

    select latitude from 123456 where id = 5; 
    

123456のようなつまり、何かがあなたの融合テーブルのテーブルIDを参照し、SQL文を書くことができます。あなたのテーブルが公開されている場合は、認証について気にする必要はありませんが、プライベートテーブルにアクセスしたり、データを更新/挿入する場合は、OAuth for authenticationを使用することをお勧めします。一般に

サンプル・コードは、ここGoogle Fusion Tables API Sample Code

3

で見つけることができるフュージョンテーブルとnewest PHP API client libraryを使用する方法である:

use Google_Service_Fusiontables; 

$client_email = '<id>@developer.gserviceaccount.com'; 
$private_key = file_get_contents('<private key>.p12'); 
$scopes= array(
     'https://www.googleapis.com/auth/fusiontables', 
     'https://www.googleapis.com/auth/fusiontables.readonly', 
     ); 
$credentials = new Google_Auth_AssertionCredentials(
    $client_email, 
    $scopes, 
    $private_key 
); 

$client = new Google_Client(); 
$client->setAssertionCredentials($credentials); 
if ($client->getAuth()->isAccessTokenExpired()) { 
    $client->getAuth()->refreshTokenWithAssertion(); 
} 

$service = new Google_Service_Fusiontables($client); 
$result = $service->query->sql('SELECT <column> FROM <table id>'); 
var_dump($result); 
関連する問題