気軽に読めるPHP入門書・PHPスクリプトが動かないときの原因と対策などを紹介します。

  1. PHPエラーの原因と対策
  2. 3 view

配列をフォームから送信するには

配列の内容をフォームデータとして送信する場合は、そのまま送信できないので、文字列に直す必要があります($_SESSIONを経由させる方法もありますが)。

implode関数やserialize関数を使うと配列を文字列にすることができますが、「”」のようなフォームのvalue属性に指定されると都合の悪い文字が含まれるので、base64_encode関数などを使って、フォーム属性値に使える値に加工する必要があります。

次の例では、配列をフォーム属性値に使える文字列$aに加工した後に、元の配列$bに戻しています。

<?php
$ar = array("t"=>"東京", "c"=>"千葉", "k"=>"神奈川");
$a = base64_encode(implode($ar, ",")); // $aをhiddenフィールドなどのvalue属性に指定
echo "暗号化された配列:" . $a . "<br />";

$b = explode(",", base64_decode($a)); // 送信先の画面で$aを配列に戻す
echo "元の配列:" . print_r($b, true);
?>

○実行結果

暗号化された配列:5p2x5LqsLOWNg+iRiSznpZ7lpYjlt50=
元の配列:Array ( [0] => 東京 [1] => 千葉 [2] => 神奈川 )

PHPエラーの原因と対策の最近記事

  1. PHPの関数や変数の前にあるアットマークの意味は?

  2. 「http:// wrapper is disabled in the server co…

  3. php.iniの場所

  4. 「Warning: array_key_exists()」と表示されるとき

  5. 「Warning: A non-numeric value encountered」と表示…

関連記事

PAGE TOP