Jestem tu nowy, dopiero uczę się obiektywności w php (wcześniej programowałem strukturalnie) i nie wiem czy gdzieś nie zbłądziłem. Piszę CMS'A na moją stronkę no i nie wiem czy debrzę postępuję. Mam taki kodzik:
klasa odpowiedzialna za połączenie z bazą danych:
<?php class bd { public $zapytanie; //przygotowanie danych do bindowania public function PrzygotujDoBazy($formula, $bindowanie) { $this->zapytanie = $baza->prepare($formula); { foreach($bindowanie as $bind) { $this->zapytanie->BindValue($bind[0], $bind[1], $bind[2]); } } return $this->zapytanie->execute(); } //zwraca zapytanie public function ZwrocZapytanie() { return $this->zapytanie; } //czysci zapytanie public function WyczyscZapytanie () { $this->zapytanie->closeCursor(); } } ?>
klasa odpowiedzialna za logowanie
<?php class uwierzytelnianie { //start sesji public function StartSesji() { { $_SESSION['inicjuj'] = true; $_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; } if($_SESSION['ip'] != $_SERVER['REMOTE_ADDR']) { $this->Przekierowanie("http://www.strona.pl"); } } //forma do logowania public function FormaLogowanie($komunikat) { { $string ="<p>".$komunikat."</p>"; } $string .= ' <form method="post" action="index.php?akcja=logowaniesprawdz"> Login:<input type="text" name="login"> Haslo:<input type="password" name="haslo"> <input type="submit" value="Zaloguj sie"> </form> '; szablony::ZapisDoSzablonu("logowanie", $string); } //sprawdzenie uzytkownika i jego zalogowanie public function SprawdzLogowanie($login, $haslo) { { ); bd::PrzygotujDoBazy("SELECT * from uzytkownicy WHERE login = :login and haslo= :haslo", $bind); if(($rzad = bd::ZwrocZapytanie()->fetch()) > 0) { bd::WyczyscZapytanie(); $this->Przekierowanie("./index.php"); } else { bd::WyczyscZapytanie(); $this->FormaLogowanie("Zly login lub haslo"); } } else { $this->FormaLogowanie("Pola login oraz haslo musza zostac wypelnione"); } } //wylogowywanie public function Wyloguj() { $_SESSION['login'] = $_SESSION['poziom'] = 0; } //import z klasy szablony public function WyswietlSzablon($nazwa) { szablony::ImportSzablonu($nazwa); } //przekierowanie private function Przekierowanie($strona) { exit; } } ?>
klasa odpowiedzialna za import szablonu
<?php class szablony { public function ZapisDoSzablonu($nazwa, $string) { $this->szablon[$nazwa] = $string; } public function ImportSzablonu($nazwa) { foreach($this->szablon as $nazwa => $string) { $naco[] = $string; $co[] = "<!--{$nazwa}-->"; } } } ?>