phpのif文について
phpでログイン処理のif文を書いています。
nameとpasswordのフィールドが記入されているのかをチェックするif文を書いたのですが、機能してくれません。何かが間違っているのでしょうか。
何も入力しないor間違った情報を入力する ということをしてもログインが出来てしまいます。
どなたかテェックお願い致します。
<?php
require('dbconnect.php');
session_start();
if ($_COOKIE['name'] != '') {
$_POST['name'] = $_COOKIE['name'];
$_POST['password'] = $_COOKIE['password'];
$_POST['save'] = 'on';
}
if (!empty($_POST)) {
// ログインの処理
if ($_POST['name'] != '' && $_POST['password'] != '') {
$sql = sprintf('SELECT * FROM members WHERE name="%s" AND password="%s"',
mysql_real_escape_string($_POST['name']),
sha1(mysql_real_escape_string($_POST['password']))
);
$record = mysql_query($sql) or die(mysql_error());
if ($table = mysql_fetch_assoc($record)) {
// ログイン成功
$_SESSION['id'] = $table['id'];
$_SESSION['time'] = time();
// ログイン情報を記録する
if ($_POST['save'] == 'on') {
setcookie('name', $_POST['name'], time()+60*60*24*14);
setcookie('password', $_POST['password'], time()+60*60*24*14);
}
header('Location: index.php'); exit();
} else {
$error['login'] = 'failed';
}
} else {
$error['login'] = 'blank';
}
}
?>
お礼
ありがとうございます elseがない場合は?