• 締切済み

phpでの値を受け渡し方法について。

1.hiddenを使ってGETorPOSTで受け取る 2.sessionを使用して受け取る 上記2つ以外で値を受け渡す方法って何かあるのでしょうか? cookieやテキストファイル、DBなどを経由しないで渡せる方法があれば 便利かと思い探しています。

みんなの回答

  • mpx
  • ベストアンサー率71% (149/209)
回答No.4

そもそも 何から何に'phpでの値を受け渡し’したいのか が分かりませんが、 クライアント側からPHPの動くWEBサーバーに値を渡したいのなら user_agent や リファラーに埋め込んで送ることも可能です

全文を見る
すると、全ての回答が全文表示されます。
  • hisappy
  • ベストアンサー率46% (184/392)
回答No.3

屁理屈的に考えても良いならば、 ・標準時刻などの外部の共通&基準となる情報をもとにした  ツーカーで阿吽の呼吸のような暗黙のお約束風暗号気味通信法。 なんていうややこしい方法も思いつきますが…

全文を見る
すると、全ての回答が全文表示されます。
  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

他に挙げるなら ・PATH_INFO ($_SERVER['PATH_INFO']) ・mod_rewrite ・ヘッダー情報

全文を見る
すると、全ての回答が全文表示されます。
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

GETとPOSTとcookieとsession以外? 欲張りさんですね(笑) ほかにはありません。 ちなみにテキストやDBを経由するためにはGETやPOSTでデータを 送りだしてやる必要がありますね? sessonだって、GET、POST、cookieと連携しなければ渡らないし。 >便利かと思い探しています。 必要十分な仕様だとおもいますけどね、これ以上多くても 制限が多くなってあまり便利ではないと思います。 あとは、httpではない別のプロトコルで処理をするとか・・・

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 値の保持の仕方について

    初めまして。 .net2003で開発を行っております。 .jsファイルでjavascriptを書いております。 値の保持の仕方で、sessionやcookieやhiddenを 使えばできるとのことはわかりましたが、初めて一週間しか たっておりませんので書き方がいまいちわかりません。 HTMLに埋め込むのではなく、.jsファイルに sessionやcookieを書くときの書き方をご教授願います。。。

  • PHPで値を保持する方法

    PHPで、リクエストをまたいで値を保持する方法を教えてください。というかサーバー起動時に1回処理をし、その情報を使い続ける方法といった方が適切かもしれません。「リクエストをまたいで」といってしまうと、反射的に「セッションに保存」といいたくなると思いますが、そういう話ではありません。 画面上に検索条件でSELECTリストを表示します。この情報を今は、画面表示のたびに毎回DBにアクセスしデータを取得しています。 しかしサーバーが起動している間程度の期間ではめったに変更することはない値なので、リクエストのたびにDBにとりに行くのがあまりにも無駄なので、これをやめたいと思っています。かといって年に何回かは変更があってもおかしくない値なので、そのたびにプログラムを変更するのではなく、あくまでもDBのデータの変更だけで済ませたいと思っています。 つまり、リクエストのたびにDBにとりに行くのではなく、PHPのプログラムファイルにハードコーディングするのでもなく、Webサーバーが起動したときに1回だけDBから読み込み、変数に保持しておき何度も使いまわしたいと思っています。 で、ためしにclassのstatic変数に値を設定してみたのですが、リクエストのたびに値が初期化されてしまいました。$GLOBALSに値を設定してもリクエストのたびに値が初期化されてしまいました。 Javaなどの言語では、当たり前に行う処理ですがPHPで実現する方法が分かりません。 PHPで、リクエストをまたいで値を保持する方法を教えてください。 もしかするとPHPでは、値を保持することはできないのでしょうか? もしそうだとすると、PHPでは同じ値をDBから何度も取得するケースではどのように対処しているのでしょうか?(DBのキャッシュ機能頼み?そもそもPHPは小規模しか扱わないから気にしない?) この点について教えてください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • hiddenの値を消したくない!

    ある画面(1)のフォーム内にhiddenのインプットを用意し、JavaScriptによりhiddenのvalueを動的に変更する処理を作成しました。hiddenの値は検索の引数に使用する重要なものなのですが、ネスケ(4.78)では画面サイズを変更しただけでhiddenに値が入っていたとしてもその値が消えてしまいます。また、画面(1)から別画面に遷移して、history.back()で画面(1)に戻った際にもhiddenの値が消えてしまいます。 hiddenに格納する方法以外でも構いません。 フレーム分割している場合であれば画面(1)以外のフレームにhiddenや変数を設け、そこにhiddenの値を設定しておくという手もありますが、あまりきれいな方法ではないと思い、他によい方法がないかどうか思案しているところです。 画面(1)の画面サイズを変更しても、history.back()で画面(1)に戻ってもhiddenの値が消えてしまわないようにするにはどうすればよいのでしょうか?

  • PHPでページを切り替えずにDBからの値を取得したい

    タイトル通りですがページを切り替えずにDBからの値を テキストボックスにセットしたいのですがやはりAjaxで 作りこみが必要でしょうか? また何か良いサンプルなどがございましたら教えてください。 使用DBはOracleになります。

    • ベストアンサー
    • PHP
  • フォームの値をリンクで渡す方法

    ふつうはフォームで <input type = "text"> <input type = "hidden" name ="test1"> <input type = "hidden" name ="test2"> <input type = "hidden" name ="test3"> <input type = "hidden" name ="test2"> とやっていけばいくつものフォームの値を渡せますね。 今回はリンクにフォームの値を入れたいのです。 a href ="http://sig.com/win.cgi?text1=$text1&text2=$text2" test1はリンクの値。 text2がテキストボックスのフォームの値です。 どうやってtext2の値を上のハイパーリンクに入れられるでしょうか? やはりJAVASCRIPTを使う必要があるでしょうか? (他の質問で解決済み) フォームとリンクの値を同時にCGIに渡す方法を教えてください。 自分としては1つ1つ値を渡していくしかないか、と考えました。

    • ベストアンサー
    • Perl
  • PHP cookieの値が更新されないときがある

    setcookie()を使ってcookieの値を更新したのですが、反映されない時があります。 クッキーに自作のセッションIDみたいなIDを保管して、そのIDを訪れる度に更新しようとしています。セッションIDなら session_regenerate_id();を使うと、更新されますよね?それと同じように自作IDに関しても、更新したいと思っています。 クッキーがうまく更新されていない時もsetcookie()の戻り値はtrue (1)です。どうしたら、session_regenerate_id();みたいにIDを更新して、反映させることができますか?

    • ベストアンサー
    • PHP
  • asp.netで値を受け渡し

    asp.netで値を受け渡しする際に、 cookieやsession、staticといった方法があります。 単一アクセスであればどれでもいいと思うのですが、 同時複数アクセスが発生した場合に、 一番安全なのはcookieだと思いますが、 session、staticなどは別アクセスで書き換えられてしまう可能性があるのでしょうか?

  • phpのform操作について

    out.html ~ ある情報を投げる → joint.php で 中継する、一時的にここで受取った情報を保管する さらにこの情報を次のページに投げる → in.php と ここで最終的に受取る。 ※注意点 ・必ずjoint.phpを中継しなければならない ・投げられた情報は変数1つで処理可能です 最初にout.htmlで入力された値をどのページに行った時でも使用できるようにしたいのですが…。 方法 1.file操作で一時的に情報を仮置きする → text.txt などと 2.session変数を使用する 3.cookieを使用する この他処理の仕方で何か良い方法ありますでしょうか? またこの場合はどれを使用すれば一番効率が良いのでしょうか? アドバイス宜しくお願いします。

    • 締切済み
    • PHP
  • phpのsessionとcookieについて

    質問は以下に2つです。 プログラムの説明は、pass,idから認証を行い、sessionidを発行します。二度目の以降はsessioidから認証します。 sidpost.phpからpostでIDとパスワードを入力させます。 データベースはid, pass, sidの3つのカラムがあります。 <?PHP require_once'DB.php'; session_name("sid"); session_start(); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <?php $id = $_POST['id']; $pass =$_POST['pass']; $cookie = $_COOKIE['sid']; $sid = session_id(); //データベース参照 //プレースホルダーを使用 //id からpassを参照する //cookie から sidを参照する $data=$sth->fetchRow(DB_FETCHMODE_ASSOC);//参照したデータを$dataの連想配列に格納 //sid保存のプレースホルダー $sth2 = $dbh->prepare('UPDATE accountid SET sid=? WHERE id=? AND pass=?'); //cookieが保存されていない場合 if(!isset($cookie) && isset($pass) && isset($id)){ //idとpassから認証 if($pass === $data['pass']){ $sth2 = $dbh->execute($sth2, array($sid, $id, $pass)); echo "初めてのログインsid登録"; } //sidがある場合cookieとデータベースのsidを比較 }else if(isset($cookie)){ if($cookie == $data['sid']) echo "sidあり成功"; //クッキーがあり、データベースと一致しない場合,sidを破棄する }else{ echo"あるはずのクッキー" .$COOKIE['sid']."<br>"; $_SESSION=array(); setcookie('sid', '', time()-3600); session_destroy(); echo "ないはずのクックキー".$_COOKIE['sid']; } //それ以外は入力フォームにリダイレクト }else{ header("location: ./sidpost.php?error=error"); } $dbh->disconnect(); ?> </body> </html> 上のようなセッション管理のプログラムを書きました。 質問は2つありまして、 ・1つめは、通常セッション管理を行う際の、条件はどのようにするのが一般的ですか? IDとパスワードがデータベースと一致する場合としない場合の2通り、cookieがある場合、ない場合の2通り、もしcookieがある場合は、データベースの値と一致する場合としない場合の2通りが考えられます。一番最適な条件文はどのようにすればよいでしょうか? またその処理はどのようにすればよいのでしょうか。 例えばcookieがあり、データベースと一致しない場合、$_SESSIONの初期化、setcookieでクッキーの削除、session_destroy()するなど。。。なにかよくわからなくなってしまいました。 ・二つ目は、 上のプログラムではじめsession_name('sid')およびsession_start()を宣言し、クライアントとサーバに$sid=session_idを発行しています。なので、$_COOKIE['sid'];の値には session_id()($sid)になっているはずです。 下のほうで、セッションの管理を行う際、 //クッキーがある場合 else if(isset($cookie)){ if($cookie == $data['sid']) echo "sidあり成功"; //クッキーがあり、データベースと一致しない場合,sidを破棄する }else{ echo"あるはずのクッキー" .$COOKIE['sid']."<br>"; $_SESSION=array(); setcookie('sid', '', time()-3600); session_destroy(); echo "ないはずのクックキー".$_COOKIE['sid']; } クッキーがあり、データベースと一致しない場合に、sessionおよび、cookieの破棄をしています。この前後でechoをもちいて$_COOKIE['sid']の値を出力すると、 破棄するの前のechoでクッキーが表示されず、 破棄したあとのechoでクッキーが表示されました。 なぜこのような結果になるのですか、逆では?と思いました。

    • 締切済み
    • PHP
  • cookieが無効のブラウザへの対応方法

    PHP+MySQL+cookie(セッション管理)にてアクセス解析を構築しております。 仕組みとしては、サイトにアクセスがあった場合に session_start()にてPHPSESSIDを発行し、DBに記録して 以降の行動をPHPSESSID毎にユーザーを特定して記録しております。 この時、DBにはcookieを有効にしたアクセスは 直接「123123abcd123123abcd123123abcd12」の形で記録され 逆にcookieが無効(?)の場合は「PHPSESSID=123123abcd123123abcd123123abcd12」 という形で記録されております。 (”isset($_COOKIE["PHPSESSID"])”にて判定しています。) cookieが有効の場合、1セッション内の行動であれば 一度記録したPHPSESSIDにてユーザーを特定することができ、問題ないのですが cookieが無効の場合だと、PHPSESSIDは発行されますが URLにパラメータとして持たせ続けないと、その行動が どのユーザーのものか特定できないと思います。 また、アクセス解析を見てみると、結構cookieを無効にした ユーザーからのアクセスも多く、無視できない数字でした。 ここで質問ですが、 1.「PHPSESSID=123123abcd123123abcd123123abcd12」の形で 記録されているものはcookieが無効のアクセスと考えていいですか? 2.cookieが無効の場合、上記の値を保持し続ける 良い方法があれば教えて下さい。(サイト内で)

    • ベストアンサー
    • PHP