Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Odwołanie do tablicy zza klasy(wiele danych)+nieograniczona ilość argumentów
Forum PHP.pl > Forum > Przedszkole
Arhimenrius
Mam nadzieję że jeszcze odpiszecie. Więc tak.
  1. public function SearchUser($option='one')
  2. {
  3.  
  4. global $db;
  5. $finduser = $db -> prepare("$this->query");
  6. if(isset($this->usid)) $finduser -> bindValue(':usid', $this->usid, PDO::PARAM_STR);
  7. if(isset($this->usname)) $finduser -> bindValue(':usname', $this->usname, PDO::PARAM_STR);
  8. if(isset($this->uspassword)) $finduser -> bindValue(':uspassword', $this->uspassword, PDO::PARAM_STR);
  9. if(isset($this->usclass)) $finduser -> bindValue(':usclass', $this->usclass, PDO::PARAM_STR);
  10. if(isset($this->ushow)) $finduser -> bindValue(':ushow', $this->ushow, PDO::PARAM_STR);
  11. $finduser -> execute();
  12. if($option='one')
  13. {
  14. $row = $finduser -> fetch(PDO::FETCH_ASSOC);
  15. }
  16. elseif($option='multi')
  17. {
  18. $row = $finduser -> fetchAll(PDO::FETCH_ASSOC);
  19. }
  20. $this -> user = $row;
  21.  
  22. }


Chodzi o to, że gdy wybiorę to multi, wypisało mi wszystkie dane związane z szukaną rzeczą. Więc daję zmienną jako 'multi' (niżej). Więc powinno użyć fetchAll(...);

  1. $request = new DBRequest();
  2. $request -> UserClearVar(NULL, NULL, NULL, '4WD', NULL);
  3. $request -> BuildUserSearchRequest();
  4. $request -> SearchUser('multi');
  5.  
  6.  
  7. print_r($request->user);


Jak widać, szukam w tym miejscu po klasie w której jest osoba. Potem za pomocą print_r próbuję wypisać wszystkie znalezione osoby, ale niestety wyrzuca tylko pierwszą znalezioną.

Moim drugim pytaniem jest, w jaki sposób operować dynamiczną ilością argumentów? Chodzi dokładniej:
  1. public function UserClearVar($usid=NULL, $usname=NULL, $uspassword=NULL, $usclass=NULL, $ushow=NULL)

I moim problemej jest to, że zależnie co potrzebuję, podawałbym daną ilość argumentów (klasa się zajmuje zapytaniami do bazy danych, zależnie od tego czy po czym chcemy szukać, tyle argumentów bym podawał). Pozdrawiam
nospor
if($option='one')
Już naprawdę mógłbyś wiedzieć co robi jedno = a dwa ==

Co do drugiego pytania to zamiast masy parametrów dla funkcji przekazuj tylko jeden parametr, który będzie tablicą parametrów. I po sprawie

czemu powielasz temat?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.