![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 7.07.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Jak zrobić aby rozdzielić ten kod na mniejsze metody jak próbuje poniżej, tylko tak aby działało ? ![]() Mówiąc bardziej dokładnie, chodzi mi o rozdzielnie, całego kolosa, bo oczywiście gdy wszystko jest razem, to działa, ale chciałby aby była oddzielna metoda na łączeniu się z bazą, oddzielna na akcje na sql i oddzielna na wyświetlanie wszystkiego foreach. Gdy próbuje jakiś z tych klocków odłączyć i wywołać this jak np. tutaj z $this->view_tav przestaje to działać. Jest na to jakieś rozwiązanie? Kod class db {
public function __construct() { $this->check_radio_is_clicked(); } public function viev_tab() { echo '<table border=2> '; foreach ($zapytanie as $row) { echo "<tr><td>" . $row['Imie'] . "</td><td>" . $row['Nazwisko'] . "</td></tr>"; } $zapytanie->closeCursor(); echo '</tr></table>'; } public function view_all() { try { $pdo = new PDO('mysql:host=127.0.0.1;dbname=mysql', 'root', ''); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); / } catch (PDOException $e) { // die('Baza danych nie dziala popawnie'); } $zapytanie = $pdo->query('SELECT * FROM osoby'); // / $this->viev_tab(); } public function sortowanie() { try { $pdo = new PDO('mysql:host=127.0.0.1;dbname=mysql', 'root', ''); / $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { // die('Baza danych nie dziala popawnie'); } $zapytanie = $pdo->query('SELECT * FROM `osoby` ORDER BY `Imie` ASC'); // $this->view_tab(); } public function check_radio_is_clicked() { $sortuj = $_GET['sortuj']; if ($sortuj == 'sortuj') { $this->sortowanie(); } else { $this->view_all(); } } } |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
w tym miejscu masz bład, nie możesz iterować po $zapytanie bo on tam nie istnieje. zrób sobie pole w tej klasie w którym zapiszesz te dane a następnie je przeiteruj ![]() btw wgl źle zbudowana masz te klasę, obiekt pdo przekazuj tam jak property i na nim operuj, bo bez sensu sie łączyć z baza za każdym razem, na razie ta klasa nic Ci nie daje więcej niż jakbyś to zrobił strukturalnie ![]() Przykład:
Ten post edytował com 13.08.2015, 00:07:40 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.06.2025 - 21:38 |