Skocz do zawartości

Zablokowane Funkcja do zwrócenia listy wiosek


Piczer

Rekomendowane odpowiedzi

Potrzebuję funkcję do klasy, która będzie zapisywać wszystkie rekordy w postaci tablicy, z bazy danych MySQL w ten sposób:

 

$this->list[0]['name']; // Nazwa pierwszej wioski
$this->list[0]['x']; // Pozycja X pierwszej wioski
$this->list[1]['name']; // Nazwa drugiej wioski, jeśli użytkownik ma więcej niż jedna wioskę
$this->list[789]['x']; // Pozycja X 790-tej wioski, jeśli użytkownik tyle posiada

 

Noi oczywiście zwracać, ale to już nie ważne :)

 

return $this->list;

Odnośnik do komentarza
Udostępnij na innych stronach

$link = mysql_query('SELECT * FROM `wioski` WHERE `o_id` == 1') or die(mysql_error());

$i=0;
while ($row = mysql_fetch_array($link)) {
$this->list[$i]['name'] = $row['name'];
$this->list[$i]['x'] = $row['x'];
$i++;
}

 

W bazie danych w tabeli 'wioski' powinieneś mieć odpowiednie dane. o_id to ID użytkownika posiadającego tą wioskę. A ta jedynka to dla testów, zmienisz ją sobie na zmienną odpowiadającą za ID użytkownika zalogowanego :)

Odnośnik do komentarza
Udostępnij na innych stronach

Wyświetliłem to tak:

$tempVill=$VillageObj->find($ProfileObj->id);
var_dump($tempVill);

 

a twój kod zamieniłem na:

public function find($id_user){
    $i=0;
    $link = mysql_query('SELECT * FROM `wioski` WHERE `userid` = '.$id_user) or die(mysql_error());
    while ($row = mysql_fetch_array($link)) {
      $this->lista[$i]['name'] = $row['name'];
      $this->lista[$i]['x'] = $row['x'];
      $i++;
    }
    return $this->lista;
  }

 

i wyskoczyło parę błędów "notice" o treści:

Notice: Indirect modification of overloaded property Village::$lista has no effect in D:\Program Files\WebServ\httpd\classes\village.php on line 17

 

Notice: Indirect modification of overloaded property Village::$lista has no effect in D:\Program Files\WebServ\httpd\classes\village.php on line 18

 

Notice: Indirect modification of overloaded property Village::$lista has no effect in D:\Program Files\WebServ\httpd\classes\village.php on line 17

 

Notice: Indirect modification of overloaded property Village::$lista has no effect in D:\Program Files\WebServ\httpd\classes\village.php on line 18

 

W dodatku funkcja var_dump wyświetliła

 

bool(false)

 

P.S Jeśli się to zrobi, to będę musiał to zamienić na kod, który pasuje w 100% do mojego skryptu, a będzie to chyba trudniejsze niż napisanie tego kodu (@UP) :)

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...