Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]jak pobrać liczbę do klasy
Forum PHP.pl > Forum > Przedszkole
peklo
Witam. Mam pytanie odnośnie pobrania wartości liczbowej do klasy. Mam taką prostą klasę która generuje mi selecta:

  1. class aaa
  2. {
  3. public function search ($search)
  4. {
  5. echo'<select name="search" >';
  6. $stmt = $pdo->prepare('select * from cos where cid = :cid ');
  7. $stmt->bindValue(':cid', /*tu chce pobrać liczbe*/, PDO::PARAM_INT);
  8. $stmt->execute();
  9. while ($rows = $stmt->fetch(PDO::FETCH_ASSOC))
  10. {?>
  11. <option value="<?php echo $rows['id'];?>><?php echo $rows['cat'];?></option>
  12. <?php
  13. }
  14. $stmt->closeCursor();
  15. echo'</select>';
  16. }
  17. }


W formularzu wywołuje ją i wyświetlam

  1. $aaa=new aaa;
  2. echo $aaa->search ($search);


i teraz chciałbym żeby w zależności od formularza pobrała się do zapytania liczba
np $liczba=4;

próbowałem z $this->$liczba ale jakoś mi nie wychodzi. Trzeba stworzyc jakąć oddzielna klase i funkcję do tej liczby?
Turson
Twoja funkcja zawiera echo - błąd. Zamykasz tam tag php i zaraz znowu otwierasz.
Skoro ma tam wstawiać liczbę pobraną z formularza to $_POST['liczba'] albo $_GET['liczba']
peklo
czyli mam to echo z tej klasy usunac?
irekk
A nie lepiej rozdzielić wyświetlanie htmla od kodu php? W najgorszym wypadku wyświetlanie wsadzić do jednej metody a kod do drugiej, następnie wołać dane z pierwszej metody. To co zrobiłeś to ogólnie pogwałcenie obiektowości.
Turson
Cytat(peklo @ 1.10.2014, 11:22:17 ) *
czyli mam to echo z tej klasy usunac?

Metoda search() powinna wyszukać rekordy i zwrócić ich tablicę, a w htmlu generujesz selecta.
peklo
niestety ale po wstawieniu $_POST['liczba'] albo $_GET['liczba'] nic sie nie dzieje
Turson
No przecież nie wiem jak twój indeks przesyłanej tablicy się nazywa i to był tylko przykład... Pochwal się może formularzem
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.