前提・実現したいこと
Wi-Fiモジュールから値が送信されたらPHPで処理するプログラムを組んでいます。
その際、Game_idにlocalstorageから取得した値(number)を挿入し、SQL文を実行したい。
!empty($_GET['gate1'])
→Wi-Fiモジュールからデータを受け取った後に処理したいので
localstorageの値を取得する処理を!empty($_GET['gate1'])の後に行いたい。
発生している問題・エラーメッセージ
Game_idにjavascriptの変数を使用したいのですが、使用できません。
PHP内にjavascriptは使えないというのはわかっているのですが、
イメージでは下記のプログラムの場所で値を取得したいです。
非同期処理で!empty($_GET['gate1'])の後に使えるのでしょうか。
該当のソースコード
test.php
php
1<?php 2if (!empty($_GET['gate1'])) { 3 <script type="text/javascript"> 4 var number = JSON.parse(localStorage.getItem("datas")).data0; 5 </script> 6 $gate1 = $_GET['gate1']; 7 echo $gate1; 8 //$tmp1 = $tmp; 9 $link = mysqli_connect('URL', 'admin', 'pass', 'DB'); 10 $sql = "UPDATE gate_out_table SET gate1='$gate1' WHERE Game_id='number'"; 11 $res = $link->query($sql); 12} 13?>
Wi-Fiモジュール
arduino
1#include <TESP8266.h> 2 3const char* ssid = "WIFI"; 4const char* password = "pass"; 5 6const char* host = "URL"; 7const char* path = "/test.php?gate1=111&String=ABCDE"; 8 9TESP8266 httpClient(Serial); 10 11void setup() { 12 Serial.begin(115200); 13 pinMode(13,INPUT_PULLUP); 14 15 uint32_t filesize = 0; // (戻り値)ファイルサイズ 16 String raw = httpClient.get(host, path, filesize); 17} 18 19void loop() { 20 uint32_t filesize = 0; // (戻り値)ファイルサイズ 21 22 if(digitalRead(13)==HIGH) 23 path = "/test.php?gate1=1&String=ABCDE"; 24 else 25 path = "/test.php?gate1=2&string=ABCDE"; 26 27 String raw = httpClient.get(host, path, filesize); 28 if(raw == "OK") { 29 }else { 30 Serial.println(raw); 31 } 32 delay(5000); 33}
補足情報(FW/ツールのバージョンなど)
Wi-Fiモジュール(TESP8266),EC2,RDS
回答2件
あなたの回答
tips
プレビュー