Blockchain code Metaverse VR

Unity×VR×Blockchain(266)

スポンサーリンク

//tips

//php理解

スタッフログイン画面のformは問題なく稼働している。

<form method="post" action="staff_login_check.php">
スタッフコード<br/>
<input type="text" name="code"><br/>
パスワード<br/>
<input type="password" name="pass"><br/>

staff_login_check.php部分に下記が入っていたためで、こちらは不要であったので削除。

<?php
session_start();
session_regenerate_id(true);
if(isset($_SESSION['member_login'])==false){

print 'ようこそゲスト様 ';
print'<a href="member_login.html">会員ログイン</a>';
print'<br/>';

}else{
print'ようこそ';

print $_SESSION['member_name'];
print'様 ';
print '<a href="member_logout.php">ログアウト</a><br/>';
print'<br/>';
}

?>

これで問題なく入ることはできたが、ログインができない場合の戻るボタンにリンクが貼られない問題が起きている。文字はきちんと表示されている。

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

}else{

再度下記のように入力し直して、問題解決。<br/‘と>漏れのミスをしていたのが要因。

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

無事に商品登録できた。

カートに複数商品を入れていく。

そうすると、ただいま障害により大変ご迷惑をおかけしております。の表示が出てmyadminに注文内容が追加されない。

Myadminのテーブルの一つが保存できていなかったようで消滅していたので再生成。

catch(Exception $e)部分を表示するために

catch(Exception $e)
{

print'ただいま障害により大変ご迷惑をおかけしております。';
echo $e->getMessage();
exit();
}
とすることで下記のエラーメッセージを取得。

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'code_member' in 'field list'

codenumberに文言を修正。

すると無事に注文情報がphpadminに登録された。

ここからはテーブル結合を実行し、必要な情報をいっぺんに取得できる方法を見ていく。

SELECT * FROM dat_sales,dat_sales_product WHERE dat_sales.code=dat_sales_product.code_sales

のように、まずは結合させたいテーブルをfrom以下に記載し、それぞれのテーブルの同一部分をWHERE以下に記載する。この場合は注文テーブルの注文コードと注文明細テーブルの注文コードを結合対象としている。

これをphpmyadminのSQLの項目に記入し、実行すると二つのテーブルが結合されたデータが表示される。

現段階だと注文が同タイミングで行われた場合に誤作動が起こる可能性があるので、同じタイミングに重ならないように順番をしっかり決めていく。

その場合にはロック機能が使用され、LOCK TABLES dat_sales WRITE,dat_sales_product WRITEのようにdat_sales WRITE部分でロックしたい対象を選択し、列挙していく。

ロックを解除したい場合は、UNLOCK TABLESを使用する。

$sql='LOCK TABLES dat_sales WRITE,dat_sales_product WRITE';
$stmt=$dbh->prepare($sql);
$stmt->execute();

を$sql='INSERT INTO dat_sales(code_number,name,email,postal1,postal2,address,tel)VALUES(?,?,?,?,?,?,?)’;の処理を実行する前に実行しておく。

こうすることで二つのテーブルにアクセスできるのはロックをかけた人だけになる。最後に接続を解除する前にロックを解除しておく。

$sql='UNLOCK TABLES';
$stmt=$dbh->prepare($sql);
$stmt->execute();

$dbh=null;

次に注文内容をcsvファイルで出力してエクセルで管理できるようにしていく。

スタッフ管理画面にダウンロードメニューを追加する。

<a href="../order/order_download.php">注文ダウンロード</a><br/>

ダウンロードしたい注文日付を選択する画面を作成する。

<?php
session_start();
session_regenerate_id(true);
if(isset($_SESSION['login'])==false){

print 'ログインされていません<br/>';
print'<a href="./staff_login.html">ログイン画面へ</a>';
exit();

}else{

print $_SESSION['staff_name'];
print 'さんログイン中<br/>';
print'<br/>';
}

?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ログイン</title>
</head>
<body>

ダウンロードしたい注文日を選んでください。<br/>
<form method="post" action="order_download_done.php">
<select name="year">
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
</select>

<select name="month">
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>

<select name="day">
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>

</select>
日<br/>
<br/>
<input type="submit" value="ダウンロードへ">
</form>

</body>
</html>

これでダウンロードしたい日付を選べるようになった。

年月日の入力プルダウンは便利なので関数化して今後いろいろなところで使えるようにする。

Common.phpのなかに内容を移し替える。

人気の記事

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.