У меня есть функция pdo, которая выбирает имена пользователей и идентификаторы пользователей из базы данных. Когда я запускаю функцию, я получаю разные результаты.
print_r дает
Array ([ID] => 58 [имя пользователя] => abdullatif)
и foreach дает мне
5-5A-а
В базе данных есть одна строка, соответствующая запросу pdo.
public function getUserCredentials($userName, $password){
$this->db = new Dbpdo_Database();
$this->db->connect();
try{
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare("SELECT
ID
FROM
administrators
WHERE
username = :username
AND
user_password = :password
LIMIT 1");
$stmt->bindParam(':username', $userName, PDO::PARAM_STR);
$stmt->bindParam(':password', $password, PDO::PARAM_STR);
}
$stmt->execute();
/*** fetch the results ***/
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $results;
/*** close the database connection ***/
//$dbh = null;
}
catch(PDOException $e){
echo $e->getMessage();
}
}
$results = $mydb->getUserCredentials($userName, $password);
foreach ($results as $row){
echo $row['ID'].'-'.$row['username'];
}
print_r($results);
Любые намеки на то, что не так, будут высоко оценены. Заранее спасибо.