【问题标题】:HTML/PHP scripting - redirect to a new webpage after validationHTML/PHP 脚本 - 验证后重定向到新网页
【发布时间】:2014-04-11 12:39:30
【问题描述】:

我正在使用类似于以下代码的代码来登录用户,并在用户登录后将其重定向到新网页:

<!DOCTYPE HTML>
<html lang="en">
<head>
<meta http-equiv=Content-Type content="text/html;  charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="css/style.css" />
<title>application</title>
</head>
<body bgcolor="#FFFFCC">
<div id="LoginPage">
<form method="GET" action="validateLogin.php">
<table style="font-size: 12px; line-height: 0;">
    <tr>
       <td align="right" bgcolor="#3333FF"><p id="text">Trader Id:</p></td>
       <td align="left" bgcolor="#3333FF">
     <input type="text" name="user">
   </td>
    </tr>
    <tr>
       <td align="right" bgcolor="#3333FF"><p id="text">Password:</p></td>
       <td align="left" bgcolor="#3333FF"><input type="password" name="pass"></td>
    </tr>
    <tr>
       <td>
             <input type="hidden" size="50" value="<?php echo $var; ?>"/>
       </td>
    </tr>
    <tr>
       <td align="right" bgcolor="#FFFFCC"><p id="text"></p></td>
       <td align="right" bgcolor="#FFFFCC"><p id="text"></p></td>
    </tr>
    <tr>
       <td align="right" bgcolor="#FFFFCC"><p id="text"></p></td>
       <td align="center" bgcolor="#B3B3B3"><input type="submit" value="Login"></td> 
    </tr>
</table>
</form>
</div>
</body>
</html>

已编辑

PHP

$query = mysql_query("SELECT username FROM Users WHERE username=$username");
if (mysql_num_rows($query) != 0) {
  echo 1; 
} else {
  echo -1; 
}

如果用户已登录,我的 PHP 验证脚本 (validateLogin.php) 返回 1,如果他们没有帐户,则返回 -1。如何修改此脚本,以便当用户登录并成功登录时,他们被重定向到新页面,而不是显示 -1 或 1 返回?

【问题讨论】:

  • 我应该指出 $var 是 PHP 脚本返回的变量名。
  • 您显示的代码是 HTML 代码。逻辑和重定向应该在 PHP 中完成,所以你能告诉我们 PHP 代码吗?而用于重定向的函数是header("Location:FILENAME.php");
  • 我不能给你确切的代码,但大致是:$query = mysql_query("SELECT username FROM Users WHERE username=$username"); if (mysql_num_rows($query) != 0) { echo 1; } else { echo -1; }

标签: php html


【解决方案1】:
$query = mysql_query("SELECT username FROM Users WHERE username=$username");
if (mysql_num_rows($query) == 1){
   header('Location:success.php'); //Login successfull
}else{
   header('Location:login.php'); //Login failed
} 

【讨论】:

    【解决方案2】:
    if( $var > 0 ) header('Location:success.php');
    

    【讨论】:

      【解决方案3】:

      只需将此添加到您的条件中

      if (mysql_num_rows($query) != 0) {
        header('Location:success.php');
      } else {
        header('Location:login.php');
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-04
        • 1970-01-01
        • 2015-03-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-05
        相关资源
        最近更新 更多