Где я ошибся в своем коде?
контроллер
class uzytkownik extends CI_Controller
{
public function index()
{
$this -> load -> model('Uzytkownik_model');
$DaneUzytkownicy = array(
'Dane' => $this -> Uzytkownik_model -> PobierzUzytkownikow(),
);
$this -> load -> view('naglowek');
$this -> load -> view('logo');
$this -> load -> view('uzytkownicy', $DaneUzytkownicy);
$this -> load -> view('stopka');
модель
class Uzytkownik_model extends CI_Model
{
public function __construct()
{
parent::__construct();
}
public function PobierzUzytkownikow()
{
$ListaUzytkownikow = $this -> db -> query('SELECT * FROM uzytkownik');
return $ListaUzytkownikow;
}
Посмотреть
foreach ($Dane->result() as $Uzytkownik)
{
var_dump($Uzytkownik);
echo $Uzytkownik['id'].' '.$Uzytkownik['imie'].' ' .$Uzytkownik['nazwisko'].'<br>';
}
в результате я получил
object (stdClass) # 18 (7) {[«id»] => string (1) «1» [«imie»] => string (3)
«Jan» [«nazwisko»] => string (8) «Kowalski» [«email»] => string (12)
«[email protected]» [«login»] => string (5) «Kowal» [«haslo»] => string (4)
«1234» [«data_rejestracji»] => string (19) «2015-02-23 11:45:48»}
Фатальная ошибка: Невозможно использовать объект типа stdClass в качестве массива в
C: \ xampp \ htdocs \ ci \ application \ views \ uzytkownicy.php в строке 6
Почему появляется фатальная ошибка?
использование result_array()
вместо result()
если вы хотите использовать результат в виде массива. В противном случае он будет рассматриваться как объект
foreach ($Dane->result_array() as $Uzytkownik) {
var_dump($Uzytkownik);
echo $Uzytkownik['id'] . ' ' . $Uzytkownik['imie'].' ' . $Uzytkownik['nazwisko'] . '<br>';
}
В твоем случае результат $Uzytkownik
будет объектом, а не массивом. так что вы должны получить доступ, как это
echo $Uzytkownik->id.' '.$Uzytkownik->imie.' '.$Uzytkownik->nazwisko;
Используйте result_array (), потому что вы должны использовать в качестве массива результатов, и теперь вы стоите в качестве класса объекта std,
вот так,
foreach ($Dane->result_array() as $Uzytkownik)
{
var_dump($Uzytkownik);
echo $Uzytkownik['id'].' '.$Uzytkownik['imie'].' ' .$Uzytkownik['nazwisko'].'<br>';
}