为isset交换$ _POST

时间:2016-03-03 09:38:15

标签: php mysql post isset

你能帮我交换$ _POST for isset my code ...

$login = $db->real_escape_string(htmlspecialchars(trim($_POST['login'])));
$password = $_POST['password'];

我说:

如果(isset($ _ POST ['登录'])) $ login = $ db-> real_escape_string(htmlspecialchars(trim($ _ POST [' login']))); 其他 $ login =您的默认值;

现在我在下一行有错误:

错误:解析错误:语法错误,意外'如果'第31行的C:\ xampp \ htdocs \ CDR \ login.php中的(T_IF)

if ($_POST) {
$errors = array();

if (empty($login) || empty($password)) {
    $errors[] = '......';
}

$auth = $user->auth($login, $password);
if (!$auth) {
    $errors[] = '......';
}


if (empty($errors)) {

    $_SESSION['user_id'] = $auth;

    echo '<p class="success">.....<a href="index.php">....</a></p>';
} else {
    foreach ($errors as $error) {
        echo '<p class="error">'.$error.'</p>';
    }
}

}

2 个答案:

答案 0 :(得分:0)

您可能想要检查您的登录帖子变量是否有任何值..您也可以为您的密码后变量执行此操作:

if(isset($_POST['login']))
 $login = $db->real_escape_string(htmlspecialchars(trim($_POST['login'])));
else
 $login = your default value; 

答案 1 :(得分:0)

我认为你的意思是检查帖子变量:

$login = isset($_POST['login']) ? $_POST['login'] : "";
$password = isset($_POST['password']) ? $_POST['password'] : "";

此外,请考虑使用PDO(http://php.net/manual/en/book.pdo.php),而不是放弃在问题中使用的方式。