Вам нужно fetch()
внутри while
цикла. Он будет возвращать только одну строку при каждом вызове.
Я также взял на себя смелость рефакторинга вашего $i
счетчика. Вместо этого No result
добавляется к массиву в первой позиции (для любых целей, которые вы планировали использовать), а последующие строки добавляются с помощью []
.
public function getTitlesForRegistrationForm() {
$array = array();
$result = $this->_db->query("SELECT UserTitleID, UserTitleName FROM UserTitles");
// Why are you putting No Result onto the array?
// I've left it in, but it doesn't make sense to me.
$array[] = "No result";
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$array[] = $row;
}
return $array;
}