こんにちは、現在、php 5.3 を mysql サーバー 5.1.61 と組み合わせて使用しています。現在、ログイン スクリプトを実行しようとしていますが、結果データもエラー メッセージも表示されないという問題に直面しています。ログインを処理する関数は次のとおりです。
public function doLogin($username,$pw)
{
$db=new incdb();
$row['name']=':username';
$row['value']=$username;
$row['type']=PDO::PARAM_STR;
$parameters[]=$row;
$row['name'] = ':password';
$row['value'] = $pw;
$row['type'] = PDO::PARAM_STR;
$parameters[] = $row;
$query=$db->execSql('SELECT * FROM tbUser WHERE '
.'username=:username AND password=MD5(:password)',$parameters);
unset($parameters);
unset($db);
$data=$query->fetch();
if (isset($data) && is_array($data))
{
$_SESSION['loggedIn']=$data['id'];
$_SESSION['loggedInData']=$data;
return 1;
}
else
{
echo 'error';
return 0;
}
}
incdb クラスには、次のような execSql 関数があります。
public function execSql($sql, $parameters)
{
$query=$this->pdo->prepare($sql);
foreach ($parameters as $param)
{
$query->bindParam($param['name'], $param['value'], $param['type']);
}
$query->execute();
return $query;
}
誰かが私がここで間違っていることを教えてもらえますか? (私はphp PDOの使用に比較的慣れていません....過去には常にmysql関数を直接使用していました)。TNX