0

ユーザー入力と一致するようにデータベースからレコードを取得しているサイトで作業しています。データがデータベースの詳細と一致しない場合は、javascript アラート ボックスを表示する必要があります。しかし問題は、javascript ボックスがボディ ロードでも表示されることです。以下は私のコードです:

//Storing the value of form's username and password into PHP variables
$username = $_POST['username'];
$password = $_POST['password'];
//This query is to check whether ther user has provided valid details
$query = mysql_query("Select * from accounts where username='$username' and     password='$password'");
$status = mysql_num_rows($query);
/**Now checking whether the number of rows returned by database are greater than 0 to  verify the login
if number of rows are greater than zero we will redirect the user to index page with a     session variable**/

if($status >0)
{
$_SESSION['username'] = $username;
?>
<meta http-equiv="refresh" content="0;url=index.php">
<?}
else
{?>
<script language="javascript">
alert('UserName or Password does not match. Please try again');
</script>
<?}?>
4

3 に答える 3

1

交換

else

else if (isset($_POST['username'])) {

ユーザーがログインしようとしていないときにアラートを表示したくない場合。

于 2012-11-09T12:47:21.560 に答える
0

これにはログインフラグが必要です。

これをフォームに追加します。

<input type="hidden" name="login_process" value="true" />

次に、ログイン コードを次のように囲みます。

if($_POST["login_process"] == "true"){ 

    //your login code

}

...your page body
于 2012-11-09T12:45:37.543 に答える
0
you miss <?php and Varible
    this Code Use then Check
       <?php 

            $username = $_POST['username'];
            $password = $_POST['password'];

            //This query is to check whether ther user has provided valid details
            $query = mysql_query("Select * from accounts where username='".$username."' and     password='**".$password."**'");
            $status = mysql_num_rows($query);

            /**Now checking whether the number of rows returned by database are greater than 0 to  verify the login if number of rows are greater than zero we will redirect the user to index page with a session variable**/

            if($status >0)
            {
               $_SESSION['username'] = $username;
            ?>
            <meta http-equiv="refresh" content="0;url=index.php">
            **<?php** }
            else
            {?>
            <script language="javascript">
            alert('UserName or Password does not match. Please try again');
            </script>
            **<?php** }?>
于 2012-11-09T12:49:02.397 に答える