Witam serdecznie
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);
if(count($bindowanie) > 0
) {
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()
{
if (!isset($_SESSION['inicjuj'])) {
$_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)
{
{
array(':login', $login, PDO
::PARAM_STR), array(':haslo', $haslo, PDO
::PARAM_STR) );
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;
unset($_SESSION['login']); unset($_SESSION['poziom']); }
//import z klasy szablony
public function WyswietlSzablon($nazwa)
{
szablony::ImportSzablonu($nazwa);
}
//przekierowanie
private function Przekierowanie($strona)
{
header("HTTP/1.1 301 Moved Permanently"); header("location: {$strona}"); }
}
?>
klasa odpowiedzialna za import szablonu
<?php
class szablony
{
private $szablon = array();
public function ZapisDoSzablonu($nazwa, $string)
{
$this->szablon[$nazwa] = $string;
}
public function ImportSzablonu($nazwa)
{
foreach($this->szablon as $nazwa => $string)
{
$naco[] = $string;
$co[] = "<!--{$nazwa}-->";
}
}
}
?>
Ten post edytował coolos 15.04.2009, 11:28:10