0

誰かがこれに光を当てるのを手伝ってくれるのだろうか:

ユーザーがクエリ文字列に特定のキー/値を指定してサイトにアクセスした場合、Cookie をドロップします。例: http://www.somesite.com?key=hmm01

Cookie コードは、テンプレートの先頭に次の前に存在します<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML )

<?php header("Content-Type: text/html; charset=utf-8"); ob_start(); if (isset($_GET['key'])) { setcookie("cookname", $_GET['key'], time()+2592000); /* Expires in a month */ } ob_end_flush(); ?>

内の同じページ: Cookie をスニッフィングしてテキストを出力する次の php コードがあります。

`

switch ($cookievalue) { case hmm01: echo "abc"; 壊す; case hmm02: echo "def"; 壊す; case hmm03: echo "ghi"; 壊す; デフォルト: 「こんにちは」をエコーし​​ます。} ?>`

-- 問題は、ユーザーが最初に到着したとき、スニファー スクリプトが Cookie を検出せず、デフォルトのテキストを出力することです: hello ユーザーがページを更新するか、別のページに移動したときにのみ、スニファーは Cookie を検出します。

ページを更新せずに Cookie をドロップして正しいテキストを出力する方法についてのアイデアはありますか?

どうもありがとう。

4

2 に答える 2

1

$_GET を初めてチェックするだけです。

if(isset($_GET['key'])) { $cookievalue = $_GET['key']; }
if(isset($_COOKIE['cookname'])) { $cookievalue = $_COOKIE['cookname']; }

switch ($cookievalue) { case hmm01: echo "abc"; break; case hmm02: echo "def"; break; case hmm03: echo "ghi"; break; default: echo "hello"; } ?>
于 2010-03-24T19:38:29.807 に答える
0

if (クエリ文字列の特定のキー/値) $_COOKIE['cookname'] = "some value";

そして、いくつかのHTTPを学びます

于 2010-03-24T19:38:30.993 に答える