J'ai une fonction pdo qui récupère les noms d'utilisateur et les ID utilisateur de la base de données. Quand je cours la fonction j'obtiens des résultats différents.Print_r et foreach donnant des résultats différents
print_r donne
Array ([ID] => 58 [nom d'utilisateur] => Abdullatif)
et foreach me donne
5-5a-a
Il y a une ligne qui correspond à la requête pdo dans la base de données.
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);
Tout indice quant à ce qui est faux serait très apprécié. Merci d'avance.
si je voulais juste le résultat de l'id comment pourrais-je faire cela? – CoderX
'$ results ['ID']' (cela peut changer si plus d'une ligne correspondante est renvoyée, en fonction de votre script) –