//tips
//基本情報理解
フィンテックサービスの一つであるアカウントアグリゲーションとは、 インターネットバンキングなどに預金者が保有する異なる金融機関の複数の口座の情報を、単一のコンピュータスクリーンに集約して表示するサービスの総称。
ワークサンプリング法とは、作業時間や機械の稼働率などを見積もる手法の一つで、無作為抽出などで決めたタイミングで現場の状況を一定回数だけ繰り返し観察・観測し、得られた結果を統計的に処理して全体の状況を推測する方式。
//unity/shopify
ページを開いたときに最初に飛ぶindex.phpからinclude_once("inc/mysql_connect.php”);で参照されるmysql_connect.phpの内容をxampp対応のものに書き換えていく。
Shopsテーブルにid,shop_url,access_token,install_dateのデータを挿入できれば良いのでその流れを追う。
$sql='INSERT INTO shops(id,shop_url,access_token,install_date) VALUE (?,?,?,?)';
この流れで考えたが今回はPOSTを使用しないので、$shop = $_GET['shop’];のようにGETで入手していく必要がある。
id,shop_url,access_token,install_dateはGETで入手できるかを模索する。まずidは顧客ナンバーに当たるのでこちらが付与することになる。urlはどのURLになるのか。アクセストークンは入手できるのかが主なポイントになりそう。
アクセストークンはgenerate_token.phpのところで作成するので、ここでは挿入いらないのではと考え、データベースへ接続だけして、indexなどの後のものでinsert処理をできないか考える。
一旦下記で接続状態。
<?php
try
{
$dsn='mysql:dbname=shops;host=localhost;cahrset=utf8';
$user='root';
$password='';
$dbh=new PDO($dsn,$user,$password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e)
{
print'ただいま障害により大変ご迷惑をおかけしております';
exit();
}
Index.phpにまとめてしまってもいいかもしれない。
下記流れで試しに実行。
<?php
//include_once("inc/mysql_connect.php");
try
{
$shopify=$_GET;
echo print_r($shopify);
$dsn='mysql:dbname=shops;host=localhost;cahrset=utf8';
$user='root';
$password='';
$dbh=new PDO($dsn,$user,$password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql="SELECT * FROM shops WHERE shop_url='".$shopify['shop']."'LIMIT 1";
$stmt=$dbh->prepare($sql);
$dbh=null;
LIMIT 句を使用すると SELECT 文でデータを取得する時に、取得するデータの行数の上限を設定することができるが、まだデータベースへの登録を行なっていないので挿入を先に行う。
一連のアプリのインストールからアクセストークンの発行は下記を参考。
https://www.shopify.jp/blog/partner-shopify-access-token-generate
さらにgenerate_token.phpの中に
$sql=“INSERT INTO shops (shop_url,access_token,install_date) VALUE (‘“.$params[‘shop’].”’,’”.$access_token.”’,NOW())”;
を入れ、まずはデータベースに反映させたい。