0

私は PHP が初めてで、オンラインの画像ギャラリー用のパスワード フォームを作成したかっただけです。何らかの理由で、設定したパスワードを入力しても PHP が「NO」を返します。私のスクリプトで何が問題なのかを理解するのを手伝ってください。

<body>
    <div class="main-img">
        <img src="images/img/main.jpg" />
    </div><!-- END OF MAIN-img -->
    <form id="myform" method="post">
        <input type="text" name="password" placeholder="Enter the password" />
        <input name="button" type="submit" value="Go!" id="submit"></input>
    </form>

    <?php 
        require("other.php");
        if(isset($_POST['button'])) {
            checkpassword();
            return;
        }
    ?> 
    <div id="ask"></div>
</body>
</html>

ここに私のPHPコードがあります:

<?php
function checkpassword() {
    $pass = mysql_real_escape_string($_POST['password']);
    if($pass == "password123") {
        echo("YES");
        exit;
    } else {
        die("NO");
        }
}
?>
4

3 に答える 3

3

mysql_real_escape_string の結果に対してチェックしないでください。この関数は、ユーザーが提供したデータをデータベースに対してバウンスするときに使用されます。

于 2013-06-03T19:54:37.687 に答える
2

mysql_real_escape_string最初にデータベースに接続せずに使用しています。データベースクエリを作成するときにのみ使用する必要があります。

だから、ただやってくださいif($_POST['password'] == 'password123')

于 2013-06-03T19:57:02.463 に答える