• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定のdirで発行したcookieを上のdirで参照できますか?)

特定のdirで発行したcookieを上のdirで参照できますか?

このQ&Aのポイント
  • 特定のdirでクッキーを発行し、上のdirで参照することはできるのか?
  • PATHを設定しなかった場合、クッキーは生成したWebページや同じディレクトリ内のページでのみ参照可能
  • 上の階層のページでクッキー情報を参照する際には、クッキー名のみが参照できる状況

質問者が選んだベストアンサー

  • ベストアンサー
  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

以下の参考リンクをじっくり読んでみましょう。 http://www.futomi.com/lecture/cookie/ http://www.futomi.com/lecture/cookie/specification.html

参考URL:
http://www.futomi.com/lecture/cookie/
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CGI(BBS)の設置が出来ません(2)

    --------------------↓ # ログディレクトリ (フルパスだと / から) $log_dir = "."; ↑これは「/bbs.log」と入れるのでしょうか? ちなみに上記全ての書類はcgi-binで同階層です。 # 表示ファイルディレクトリ (フルパスだと / から) $htm_dir = "."; ↑これもよく分かりません。 # CGIスクリプト自身をURLで指定 $script = "http://www.●●●.ne.jp/cgi-bin/lomobbs.cgi"; ↑の様に入れましたが合っていますでしょうか? # 表示ファイル (index.html) のある「ディレクトリ」をURLで指定 $htm_url = "http://www.●●●.ne.jp/cgi-bin"; # ログファイル名 $logfile = "bbs.log"; # ロックファイル名 $lockfile = './bbs.lock'; # 過去ログのあるディレクトリ (フルパスだと / から) $past_dir = "."; # 補助プログラムのファイル名 $subfile = './bbs2.cgi'; ---------------------------- 以上、アヤシイ個所を書いてみました。 おかしな個所があれば教えてください。 ちなみに、DLしたcgiの書類名を変更したのですが、 それは何か影響はありますか? いくらやり直してもページが表示されません。

    • 締切済み
    • CGI
  • COOKIEの発行について

    今、自分のホームページで使っているCGIでクッキーが正しく動作していないようです。 動作しない原因がどうやら、 例hoge.hoge.to/cgi/hoge.html がフレームで、CGI自体は 例www.goo.com/~hoge/cgi/hoge/hoge.cgi と、ブラウザに表示されるアドレスと違うドメインだからみたいです。 直接、www.goo.com/~hoge/cgi/hoge/hoge.cgi にアクセスするとCOOKIEは動作しています。 フレームを使わないという対処方法以外に何か方法はないでしょうか? pathやdomain属性をつけてみたりしましたが解決しませんでした。 よろしくお願いします。

  • cookieの有効範囲について

    cookieは設定したページのみでしか読み書きできないのでしょうか? あるサイトで document.cookie = name + "=" + escape(aaa) + "path=/ ; expires=" + kigen2 + "domain=" + location.hostname + ";"; という風にpathの部分を「path=/」とすれば同じサーバー内なら参照可能だと記載されていたのですが、どうにも上手くいきません。 cookieを設定したページ以外のページで同じcookieを読み書きする方法を知っていたら是非教えてください。 よろしくお願い致します。

  • 指定ディレクトリからcookie取得

    $cook = $ENV{'HTTP_COOKIE'}; foreach ( split(/;/, $cook) ) { ($key, $val) = split(/=/); $key =~ s/\s//g; $cook{$key} = $val; } $cook{'name'} ./index.cgiで、上記のように$ENV{'HTTP_COOKIE'}でクッキーを取得しています。 このままでは./に保存されたクッキーが取得されてしまいますが、これを、任意のディレクトリ(./../html/等)に保存された場所から取得したいと考えていますが、可能でしょうか。 CGIが設置されているディレクトリ = 'http://hogehoge/cgi-bin/'; COOKIEを読み込むディレクトリ = 'http://hogehoge/html/';

    • ベストアンサー
    • Perl
  • cookieを設定

    Webブラウザが情報を保存する機能としてcookieがありますが、 JavaScriptでcookieを設定する方法と、 CGIがHTTPヘッダに「Set-Cookie」を含めてcookieを設定する方法が あるかと思います。 JavaScriptとCGIで設定する2つの方法のそれぞれのメリットは なんでしょうか? つまり、 JavaScriptを利用してcookieを設定する場合、Webサーバがcookieに 対応していなくても問題ないという利点はあることは分かりましたが、 他にはないのでしょうか? CGIでHTTPヘッダにcookieを保存しておいた場合、うれしいことは 何でしょうか?

  • 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を呼び出せない・・・?

    自分のホームページで、左にフレーム、右にBBSのCGIを表示の状態になったとき、一回書き込みをしてもcookieが保存されないようです。 右クリック→新しいウィンドウで開く、なら問題なく保存できるようです。 原因として思い当たるのは、フレームページとCGIのサーバが異なることぐらいです。 フレームページを表示させたまま書き込むときに、cookieを保存することはできないでしょうか?

    • ベストアンサー
    • HTML
  • クッキーの名前について

    はじめまして、PHPでクッキーを利用したいのですが、 クッキーの名前で悩んでいます。 Windowsに保存されているクッキーを見てみると、 クッキーの名前が、 Cookie:******@?????? ****:Windowsにログインしているユーザー名 ????:ドメイン となっているものがあります。 概して大手サイトより発行されたクッキーがこのようになっているように思えます。 自分で作成したPHPでクッキーを発行してみると、 setcookie()で指定したpathの部分が名前となるようです。 また、pathを指定しないと発行元のphpが存在するディレクトリ名に なります。  クッキーの名前が”Cookie:******@??????”となるのは、何か意味があるのでしょうか? セキュリティーなどにからんでこうなるとしたら、同じようにしないといけないのかな?でも、Windowsのユーザー名ということは、他のOSでは不都合が生じるのかな?と悩んでしまい、質問させていただきました。 お分かりになる方いらっしゃいましたらご回答よろしくお願いします。

    • ベストアンサー
    • PHP
  • phpでのCookieのパスの書かれ方

    phpの初心者なのですが、Cookieでうまく情報の引き渡しができないので、アドバイス頂けないでしょうか? test1でCookieを初期設定した後に、Cookieを使ってtest2を呼び出し、 test2上で設定し直した値でCookieを書き変えてtest2を再呼び出ししています。 再呼び出しした時のCookieが読めないので、ブラウザを調べてみると、yyという名前のクッキーが2つ存在しているためだと判りました。値は確かに置き変わっているのですが、パスが違っているので読み出せないようです。 初期設定した時のパスは /tst/  → test1.phpでsetcookieで設定したもの 再設定した時のパスは /  → test2.phpの中のJavascriptで設定したもの になっていました。 ▽test1.php (/svr1/tst/) setcookie("yy",$yy,0,"./"); (略) header("HTTP/1.1 301 Moved Permanently"); header("Location: test2.php"); ▽test2.php function set_Cookie() { yy = parseInt(document.f1.ck_yy.value); document.cookie = "yy=" + yy + "; path=/"; return true; } <php? $yy = $_COOKIE['yy']; ?> <form name="f1" action="test2.php" method="post"> <input name="yy">  <input type="submit" value="実行" onClick="set_Cookie()">   </form> setcookie の引数であるパス名を最初は省略していたのですが、/tst/というパスが入ってきてしまうため、パス名をあえて ./としてみたのですが結果は同じでした。 ちなみにtest1の呼び出し元は別のサーバーで以下のように呼びだしています。 ▽test0.html (/svr0/wwwroot/) <a href="http://svr1/tst/test1.php">test1</a> パス名はどのように決まるのでしょうか?

    • ベストアンサー
    • PHP
  • VBのDir関数について

    VB6.0について質問です. Dir関数にてフォルダ内のファイルを参照したいのですがうまくいきません>< 最初のファイルは参照できるのですが次のファイルへの参照ができません。。。 下記のコードでおかしいところはあるでしょうか? path = "d:\ABC\data" item = Dir(path & "\*.mdb", vbDirectory) Do While item <> "" ' ループを開始します。 item = Dir ' 次のフォルダ名を返します。 Loop

ip7230がパソコンつながりません
このQ&Aのポイント
  • ip7230がパソコンに接続できない問題です。ドライバーのインストールやUSBケーブルの交換でも解決しない場合があります。
  • キヤノン製品のip7230がパソコンに接続できない問題についてです。ドライバーのインストールやUSBケーブルの交換を試しても解決しない場合があるようです。
  • ip7230がPCに接続できないトラブルについての質問です。ドライバーのインストールやUSBケーブルの交換など試したが解決しない場合があります。
回答を見る

専門家に質問してみよう