前回JavaScriptからPHPを呼べるようにしました。
でもまだ足りない点が。。PHPに対してJavaScript側で決まった変数を渡したい場合どうすればいいのか。。
今想定しているケースは、PHPからMySQLに接続して温度データを取得する予定なんですけど、さすがに全データを取るのは。。。(×_×;)
今欲しいデータだけPHPには取得して欲しいですよね。。例えば1週間分とか、1日分とか。
解決したのでご紹介します(◍•ᴗ•◍)♡ ✧*。
やり方は単純。コードの呼び出し方を変えるだけ!
インターフェース部分だけご紹介します。
以前の記事ではCreateJsonFromMySql.phpを読んでいるだけでしたが、呼ぶ時に’?’をつければパラメータを渡すことができます。
‘?’の後に変数名を付けて、’=’の後に渡したい値を記載します。
2つ以上パラメータがある場合には’&’でつなぎます。
サンプルコードを見て見ましょう。
JavaScript側の実装方法
こちらがJavaScript側のサンプルです。range/targetという二つの変数を渡そうとしています。
1 2 3 4 5 6 |
var urlWithGetData = "CreateJsonFromMySql.php?range=" + showspan + "&target=temperature"; var jsonData = $.ajax({ url: urlWithGetData, dataType: "json", async: false }).responseText; |
PHP側の実装方法
先ほどの情報はクエリ情報として渡されるので$_GETで受け取ることができます。
先ほど渡されたパラメータを受け取る時のサンプルはこちらです。パラメータ入力されてこない場合もあるので一応データチェックをしています。
1 2 |
$range = (isset($_GET['range'])) ? $_GET['range'] : 'Day'; $target = (isset($_GET['target'])) ? $_GET['target'] : 'temperature'; |
おわりに
意外と簡単にできましたね。パラメータを渡すことで効率的にサーバーサイドのコードを動かすことができるので使う機会は多そうです(*´罒`*)
記事を読んでいただいてありがとうございます。この記事がいいなと思ったら下記のSNSボタンのクリックをお願いします。励みになります😁