2012-02-03 13 views
0

私は以前にクッキーを設定しており、うまくいきました。私は基本的に別のサーバー上の別のWebページにそのコードをコピーして、コードが動作していません。コードはif文の内部にありますが、私はデバッグのためにブラウザにコードをエコーし​​て表示しています。シンプルなクッキーは設定されません

<?php 
    // Set some cookies 
      $user = stripslashes($_POST['user']); 
      $password = md5($_POST['password']); 
      $hour = 0; // Changed to expire on browser close, was time() + 86400; 

      setcookie(Panel_ID, $user, $hour); echo "setcookie(Panel_ID, $user, $hour);"; 
      setcookie(Panel_PW, $password, $hour); echo "setcookie(Panel_PW, $password, $hour);"; 
?> 

まだ私が次のページに行き、存在するすべてのクッキーをチェックすると、それらの2つは設定されません。

<?php  
echo "Cookies set are..."; 
print_r($_COOKIE);  
?> 

クッキーはいくつか存在しますが、それらは私が設定した2つではなく、ウェブサイトのフォーラムからのものです。

私も、変数の問題か何かを排除するための非常にシンプルなクッキーを試してみました:

<?php 
    setcookie(test,scott,0); 
?> 

そして、そのいずれかがどちらかに設定されません。

+0

*プレーンテキスト*のCookieにユーザーのパスワードを設定していますか? – cmbuckley

+0

いいえ、実際には既にコードの上にさらに変換されています。 –

+0

ここにそれもここに示します;) –

答えて

1

最後に答えが見つかりました。

setcookieの前にHTMLを作成できないというCookieに関する記事がいくつか見つかりました。私は自分のコードを移動したが、まだ変更はありませんでした。その後、別のセクションの前にトリガされるようにコードを移動しました。基本的に、そのページにはif(isset($ user))とifが設定されていません。私はifsetを他のセクションの上に移動して、クッキーが設定される前にHTMLが読み込まれていないようにしました(それがトリガーされなかったifステートメントの中にあったからであってはいけませんでした)。

1

setcookieの最初の引数は文字列でなければなりません。クッキー名を変数として入力するだけです。最初の引数の前後に引用符を入れてみてください。

+0

変更はありません。また、同じことが、他のサーバーでも最初のセクションに引用符がない場合でも機能します。 –

関連する問題