1

基本的に、URL (例: www.website.com/?id=432432) を介して送信された ID を取得し、ユーザーが連絡先ページにアクセスするまで、それを Web サイト全体で取得したいと考えています。変数とセッション変数を作成しました

session_start();
$getId = $_GET["id"];
$_SESSION['session_browser_test'] = $getId;
$adv_id = $_SESSION['session_browser_test'];

と使用

echo $adv_id; 

私のindex.php Joomlaテンプレートで、すべてのページに適用されます。

しかし、問題は、www.website.com/?id=432432 にアクセスすると、自分の Web ページに ID がエコーされることですが、次のリンクをクリックして別のページに移動すると (例: www.website.com/nextPage) ) 前のページのセッション値を保持しません。何故ですか?また、サイト全体で ID を使用するにはどうすればよいですか?

4

5 に答える 5

2

次のページの URL から ID を取得しない可能性があります。

echo $getId;

代わりに、セッションの id を使用する必要があります。

$_SESSION['session_browser_test']; // your id stored in session
于 2012-08-23T06:01:46.380 に答える
1

各ページでセッションを開始する

 session_start();

セッションで変数にアクセスするには、$_SESSION 変数を呼び出す必要があります。

echo $_SESSION['session_browser_test'];
于 2012-08-23T05:58:50.653 に答える
0

始める

session_start();

(開始されていない場合)アプリのルートにあるindex.phpで(セッションはおそらくすべてのページで開始されます)、(必要に応じて)呼び出します:

$_SESSION['session_browser_test'];

このセス変数を独自の変数に割り当ててから、別の場所で呼び出す代わりに。

于 2012-08-23T06:20:00.700 に答える
0

HTTP はステートレスであるため、Web サイト全体で変数を記憶するために何かをする必要があります。session_start(); のように、 session を正しく使用していることを確認してください。getメソッドを介してIDを送信すると機能しますが、他のページに移動すると、これを覚えても意味がありません。これをページを介して ID を送信するために使用します。

<?php echo get_permalink(910); ?>?userid=<?php echo $value['userId'];?>

これを URL で送信し、次のページで次のように使用します。

$sql = "select * from `wp_pelleresuser` where userId =".$_GET['userid'];

このアプローチを使用すると、セッションを使用せずに、必要なすべてのページで単一の変数を使用できます。セッションを使用せずにすべてのページでワードプレスが変数を管理する方法をグーグルで試してください。それはあなたを助けるでしょう。ハッピーコーディング!

于 2012-08-23T06:07:15.623 に答える
0
if(isset($_GET["adv_id"])){ 
  $_SESSION['session_browser_test2'] = $_GET["adv_id"];
  $adv_id = $_SESSION['session_browser_test2'];
}
else {
  $adv_id = $_SESSION['session_browser_test2'];
}
于 2012-10-11T03:18:43.413 に答える