2014年1月19日日曜日

Web開発転向者向けのメモ PHP⇔JavaScript間でのデータの受け渡しなど

キーワードは

  • ブラウザオブジェクト
  • スーパーグローバル変数
  • PHPとJavaScriptのデータ受け渡し
  • PHPやJavaScriptの外部ファイル(共通クラスの呼び出し方)

・ブラウザオブジェクト
ブラウザ操作用のクラス郡。ブラウザが保持している情報へのアクセスや書き換えができる。

--JS各オブジェクトと階層
http://www.htmq.com/js/index.shtml#js_window



--URLにパラメータを付けて渡す
index.html 渡す側
<a href="page.html?sample1=yes&hensu=100">引数つきリンク</a>

URLの後に"?"でパラメータを繋ぎます。
複数の場合は"&"で連結していけます


page.html 受け取る側
<script type="text/javascript">

var urlPrm = new Object;
var urlSearch = location.search.substring(1).split('&');
for(i=0;urlSearch[i];i++) {
 var kv = urlSearch[i].split('=');
 urlPrm[kv[0]]=kv[1];
}

alert(urlPrm.sample1);
alert(urlPrm.sample2);
</script>


で表示される文字はそれぞれ"yes","100"となります。

--スーパーグローバル変数
・スーパーグローバル変数(定義済みの変数)
$GLOBALS〔グローバル変数〕
$_SERVER〔サーバー変数〕

$_GET〔HTTP GET変数〕
引数付きURL or  getのデータを取り出せる
http://xxxx.yy.zz/user.php?id=5&name=yoshi
URLの引数 or フォーム入力の取得
$id = $_GET['id'];

$_POST〔HTTP POST変数〕
$_COOKIE〔COOKIE変数〕
$_ENV〔環境変数〕
$_FILES〔HTTP ファイルアップロード変数〕
$_REQUEST〔リクエスト変数〕

$_SESSION〔セッション変数〕
セッションごとにデータを保持できる
PHP⇒PHPへのデータ受け渡し
 セッション生成
session_start();
$_SESSION["data"]="保存データ";

// セッション復元
session_start();
echo "セッションデータ:" , $_SESSION["data"] ;



JSURL⇒PHPへ引数を渡す
http://www.php-ref.com/web/01_get.html
 GETメソッドの送信データを取得する。
フォームで、項目「get_data1」にデータ入力してGETメソッドで送信する。
 「test1.php」
<html>
<body>

<form action = "test2.php" method = "get" >--or post
<input type="text" name="get_data1">

<input type="submit" name="GET送信" value="GET送信">
</form>

</body>
</html>

GETデータ「get_data1」を取得してHTMLに出力する。
 「test2.php」
<html>
<body>

<?php
echo $_GET["get_data1"];--or POST
?>

</body>
</html>

url⇒PHPへ引数を渡す
 http://xxxx.yy.zz/user.php?id=100&name=データ

取り出す
<?php
  // [ user.php ]
  if(isset($_GET['id'])) {
      $id = $_GET['id'];
      print("$id<br>\n");
  }
  if(isset($_GET['name'])) {
      $name = $_GET['name'];
      print("$name<br>\n");
  }
?>

PHP⇒JSへ
http://www.crystal-creation.com/web-appli/technical-information/programming/php/sample/javascript-cooperation.htm

<script type="text/javascript">
  var a = <?php echo $a; ?>;
</script>

--共通jsファイルの利用
http://www.tohoho-web.com/js/write.htm#jsfile

--共通PHPファイルの利用
http://www.ipentec.com/document/document.aspx?page=php-function-definition-call-external-file

0 件のコメント:

コメントを投稿