2

Cookie からユーザー ID フィールドを自動入力するように php フォームを取得しようとしています。新しい PC の場合は、ユーザーに「記憶する」オプションを提供します。手動で Cookie を追加してからフォーム ページを読み込むと、ユーザー ボックスに正しく入力されますが、フォーム自体から投稿されたときに Cookie を設定できないようです。

PHP フォームからのコード:

<form action="./post_cookies.php" method="post" id="HOME">
    <div id="nav">
        <ul>
            <li><i>Whats your username:</i></li>
           <li><i><input type="text" size="40" name="User_ID" 

           <?php
if (isset($_COOKIE["user"]))
  echo "value=\"" . $_COOKIE["user"] . "\"</i></li>";
else
  echo "placeholder=\"12345\"></i></li>";
?> 
            <li><i>Remember me: <INPUT TYPE="checkbox" NAME="remember" VALUE="1"> Yes</i></li>
        </ul>
    </div>

<div id="nav" style="text-align:center;">
        <ul>
            <li><i><button form="HOME" type=submit style="width:200px;height:40px">Submit</button></i></li>
        </form>
        </ul>
    </div>

</div>

このフォームは「post_cookies.php」に投稿します。コードは次のとおりです。

   <?php
// creating a variable to store the timestamp in
$posttime = time();

// if the remember me checkbox returns a 1 then add the users, username as a cookie

if($_POST[remember]==1)
{   
    setcookie('user', $_POST[User_ID], $posttime + 3600);        // Sets the cookie 
}

// this is where the data base connection would go

header("Location: http://www.domain.com/index.php");
?>

「remember me」がチェックされている場合、post_cookies.php はユーザー ID を使用して Cookie を設定します。

post_cookies.php がどこで間違っていて、Cookie を設定していないのかわかりません。どんな援助も大歓迎です。

ありがとう!マシュー

4

1 に答える 1