【PHP入門】GET, POST, COOKIE, SESSIONで値を取得

所有時間3分

今回はPHPの値を送信して取得(GET, POST)、保存して取得(COOKIE, SESSION)する方法を紹介します。

目次

GETの使い方

送信側:method=”get”

<!-- index.php -->
<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title></title>
</head>
<body>
  <form action="submit.php" method="get">
    <input type="text" name="message">
    <input type="submit">
  </form>
</body>
</html>

formタグのmethod属性の値を「get」にしておくことで、inputタグのvalue属性の値をGETで送信できます。inputタグにはname属性で送信した値を受け取る際に必要になる値を指定しておきます。

URLパラメーターでも値を送信できる

<a href="URL?名前=値">クリック</a>
<a href="submit.php?message=Hello">クリック</a>

このようにURL末端に「?」を書いて、値と紐付けた名前を送信できます。

取得側:$_GET[“キー”]

<!-- submit.php -->
<?php
$message = $_GET["message"];
echo $message;

GETによって送信された値は送信側で紐づいたキーで取得できます。

POSTの使い方

送信側:method=”post”

<!-- index.php -->
<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title></title>
</head>
<body>
  <form action="submit.php" method="post">
    <input type="text" name="message">
    <input type="submit">
  </form>
</body>
</html>

formタグのmethod属性の値を「post」にしておくことで、inputタグのvalue属性の値をGETで送信できます。基本的にGETと使い方は同じです。

取得側:$_POST[“キー”]

<!-- submit.php -->
<?php
$message = $_POST["message"];
echo $message;

POSTによって送信された値は送信側で指定したname属性の値を使って取得します。

COOKIEの使い方

値の保存:setcookie()

<?php
$name = "name";
$value = "Hello World";
$time = time() + (60 * 60 * 24 * 7);

setcookie($name, $value, $time);

COOKIEで値を保存するには3つの引数(キー, 値, 期限)を指定します。

テックアカデミーtime関数の使い方

値の取得:$_COOKIE[“キー”]

<?php
if(isset($_COOKIE["name"])){
  echo $_COOKIE["name"];
}else{
  echo "cookieに保存されていません";
}

COOKIEに値が保存されていれば、値に紐づいたキーを使って取得できます。

SESSIONの使い方

保存側:$_SESSION[“キー”] = 値;

<?php
session_start();
$_SESSION["message"] = "Hello World";

SESSIONで値を保存・取得する際は必ず「session_start()」を先に書く必要があります。

取得側:$_SESSION[“キー”];

<?php
echo $_SESSION["message"];

SESSIONで保存した値はCOOKIE同様、値に紐づいたキーを使用して取得します。

以上です。

URLをコピーする
URLをコピーしました!
目次
閉じる