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?
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();
}
}
}