こんにちは、php で基本的なログイン スクリプトを作成しています。セキュリティについて心配しているわけではないので、機能させたいだけです。しかし、何らかの理由で、データベースに値がある場合に false を返し続けます。
編集: connection.php には、データベースにログインするための情報が含まれています。
$config['db'] = array(
'host' => 'localhost',
'username' => 'root',
'password' => '',
'dbname' => 'mywebsite'
);
$db = new PDO('mysql:host=' . $config['db']['host']. ';dbname=' . $config['db']['dbname'] , $config['db']['username'] , $config['db']['password']);
connection.php の終わり
if (isset($_POST['username']) && isset($_POST['password']))
{
require_once 'Connection.php';
$user = $_POST['username'];
$pass = $_POST['password'];
$sth = $db->prepare('SELECT `username` , `password` from `library` where `username` = ? And `password` = ? ');
$sth->bindParam(1, $user);
$sth->bindParam(2, $pass);
$sth->execute();
if($sth->fetchColumn() > 0) {
echo $user;
} else {
echo 'false';
}
}
私は何を間違っていますか?たとえば、ユーザーの場合は ill send in test、パスワードの場合は 123 です。これは私のライブラリに存在し、false を返します。