Blockchain code Metaverse VR

Unity×VR×Blockchain(347)

スポンサーリンク

//tips

//基本情報理解

キャズム理論は新商品やサービウスに対する消費者の行動を5つの区別に分類したイノベータ理論を前提としており、イノベータ、アーリーアダプタ、アーリーマジョリティ、レイトマジョリティ、ラガードの分けられる。

その中でもアーリーアダプタからアーリーマジョリティの移行の間には大きな溝であるとされている。

技術のSカーブとは進歩過程を示したもので、最初は成果が上がらず、その後急速な進歩を見せ、成熟段階になると停滞するというもの。

フィルタバブルとは、webやsnsなどのネット利用で、個別にパーソナライズされた情報が提供され、それがフィルタの役目となり、自分好みの情報しか見えなくなるもの。

//pitch

今日はSquareのピッチを確認。既存の競合商品となるcardとの違いを示すvalue to userでの強みの強調や訴求ターゲットとそのように訴求していくが簡潔になっている。同業他社または今後参入が予測される企業との差別化を行い、なぜ今追加資金が必要なのかも明確にしている。

参考にすべき良作だった。

//unity/shopify

以前作成にしたphpカートのプロジェクトを引っ張り出して動作を確認していく。

Htmlで作成した名前とpassのフォームに入力したものをstaff_login_check.phpに飛ばす。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ログイン</title>
</head>
<body>
スタッフログイン<br/>
<form method="post" action="staff_login_check.php">
スタッフコード<br/>
<input type="text" name="code"><br/>
パスワード<br/>
<input type="password" name="pass"><br/>
<br/>
<input type="submit" value="ログイン"><br/>
</form>
</body>
</html>

staff_login_check.phpでは、postで渡したcodeとpassで入力内容をキャッチ。

staff_code=$post['code'];//codeは数字1,2,3...
$staff_pass=$post['pass'];

$staff_pass=md5($staff_pass);
//var_dump($staff_pass);

$dsn='mysql:dbname=shop;host=localhost;charset=utf8';

$user='root';
$password='';
$dbh=new PDO($dsn,$user,$password);
$dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

$sql='SELECT name FROM mst_staff WHERE code =? AND password =?';
$stmt=$dbh->prepare($sql);
$data[]=$staff_code;
$data[]=$staff_pass;
$stmt->execute($data);

$dbh=null;

$rec=$stmt->fetch(PDO::FETCH_ASSOC);

ここでスタッフ名とパスワードが一致するものを抽出している。抽出したものがあればheader('Location:staff_top.php’);へ飛ぶように指示している。

if($rec==false)
{
print 'スタッフコードかパスワードが間違っています。<br />';
print '<a href="staff_login.html"> 戻る</a>';

}else{
session_start();
$_SESSION['login']=1;
$_SESSION['staff_code']=$staff_code;
$_SESSION['staff_name']=$rec['name'];

header('Location:staff_top.php');
exit();
}

}catch(Exception $e){
print'ただいま障害により大変ご迷惑をおかけします';
}
?>

これを参考にし、データベース接続を切った後に$rec=$stmt->fetch(PDO::FETCH_ASSOC);を行うことで$recに入力状態が維持されるようになった。

$dbh=null;

$rec=$stmt->fetch(PDO::FETCH_ASSOC);
$demo_time=$rec['install_date'];
print $demo_time;

if($rec==true)
{
print'再ログインです。<br/>';
}

ただ、このままだとsessionが何の意味もないので、データベースの中に今回のトークンと一致するものがあった場合には、

if($rec==true)
{
session_start();
$_SESSION['login']=1;
$_SESSION['shop_url']=$rec['shop_url'];
header('Location:hello.php');

とし、sessionを設定した上で、別のphpに飛ばす。

飛ばし先のhello.phpも変更し、

<?php

session_start();
session_regenerate_id(true);

if(isset($_SESSION['login'])==false)
{
print'NG';
}else
{
print $_SESSION['shop_url'];
print 'に再ログイン<br/>';
}
?>

<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>

のようにしておく。

なぜか

NG
Hello World

と表示されてしまう。

$_SESSION['login']=1;は事前に渡しているので、if(isset($_SESSION['login'])==false)はtrueになるはずだが。

アプリを通さない形で判定するために

<?php

session_start();
$_SESSION['login']=1;
$_SESSION['shop_url’]=‘abc’;
header('Location:hello.php');
exit();

?>

で別途スクリプトを作成。

これを実行するときちんと

abcに再ログイン
Hello World

と表示される。

アプリの方のindex.phpをhe.phpへ飛ぶように変更し、sessionが機能するかの様子を見る。

やはりアプリとしてのスクリプト実行ではsessionを活用できないことがわかった。

ということはsessionを使用しないやり方を考える必要があるのか。

 

人気の記事

1

コロナによる需要変化 コロナパンデミックの影響で、人々は外に出られなくなり、自宅で過ごす時間が増えました。 この自粛ムードの中、下記のようなビジネスの需要変化が引き起こされています。 【利用者減少】 ...

2

米国レストランの決済時に毎日お世話になっていた「Square」のビジネスモデルについて本日はふれていきたいと思います。 「Square」とは、ネットにつながったモバイル端末と専用のカードリーダーを用意 ...

3

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

4

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

5

ナイキのSNKRSが、なぜこれほどまでに人気なのか?調べてみました。 きっかけは米国での友達との会話。彼は自分のシューズをみせて、「これ20万円もしたんだぜ。」と語ってくれました。 あまり靴に興味がな ...

-Blockchain, code, Metaverse, VR
-, ,

Copyright© BUSINESS HACKER , 2021 All Rights Reserved Powered by AFFINGER5.