0

ユーザーがサインアップして情報を入力できるようにする PHP のサイトを開発しています。各ユーザーに固有の URL を提供したいと考えています。ユーザーが自分のプロファイルにログインするときに、www.mysite.com/profile.php?user=username後で書き換えるために、ユーザー名だけを URL (のように) に渡す必要があります。ただ、私はこの方法を使っているのですが、ログイン中に使うとURLにもパスワードが渡されてしまうので$_POSTはないかと心配です。$_GET私は何をすべきか?

4

4 に答える 4

1

これを行うのに実際に問題はないはずです。パラメータPOSTで URL を指すメソッドを使用するだけです。GET

したがって、次のようにPOSTリクエストします。

www.mysite.com/profile.php?user={$username}

このように、URL のユーザー変数を認証で使用する必要はありません。
単純な例としてこれを考えてみましょう:

<form method="post" action="/profile.php?username=hasan">
  <input type="text" name="username" value="hasan" />
  <input type="text" name="password" value="********" />
</form>

投稿先の URL もハード コードする必要はありません。フォームを送信する前に、いつでもユーザー名を動的に追加できます。

于 2013-04-25T22:35:44.433 に答える
0

Lix の答えが最善であり、あなたがすべきことですが、login.php を持っておらず、何らかの奇妙な理由で profile.php?user に直接アクセスしてログインしたい場合は、次の JavaScript を使用できます。

<script type="text/javascript">
    $(document).ready(function() {
        $("#theForm").submit(function() {
            $(this).attr("action", $(this).attr("action") + $("#usernameInput").val());
            return true;
        });
    });
</script>

フォームは次のようになります。

<form action="http://www.mysite.com/profile.php?user=" method="post" id="theForm">
    <input type="text" name="usernameInput" id="usernameInput">
    <input type="password" name="passwordInput" id="passwordInput">
    <input type="submit" name="submit" value="Login">
</form>

そして、送信時にアクションが入力されたユーザー名に変わります。それでも、profile.php?user にリダイレクトする中間の login.php が必要です。

于 2013-04-25T23:32:34.040 に答える
0

へのリンクまたはリダイレクトで追加できます

<a href="profile.php?user=<?php echo $php_variable ?>">Link to the profile</a>

そして、それを(phpファイルで)読んだ後、$_GET['user']

于 2013-04-25T22:35:36.853 に答える