Kod
<form action="zaloguj.php" method="post">
<label for="login">Login: </label><input type="text" name="login" />
<label for="password">Hasło: </label><input type="text" name="password" />
<input type="submit" value="zaloguj" />
</form>
<label for="login">Login: </label><input type="text" name="login" />
<label for="password">Hasło: </label><input type="text" name="password" />
<input type="submit" value="zaloguj" />
</form>
Kod
<?php
interface storage {
public function login($name, $pass);//1
}
class mysqlStorage implements storage{//2
public function login($name, $pass){//3
global $pdo;
$pdo=new PDO('mysql:host=localhost;dbname=nazwabazy', 'root', 'root');
$stmt=$pdo->prepare('SELECT name, ranga FROM `users` WHERE name=:name AND password=:password');
$stmt->bindValue(':name', $name);
$stmt->bindValue(':password', $pass);
$stmt->execute();
$user=$stmt->fetch();
if($user){
return $user;
}
return false;
}// login();
}//mysqlStorage
class user{//4
public $name;
public $rank;
private $storage;
public function __construct($storage){
$this->storage=$storage;
}
public function zaloguj(){
if($_SERVER['REQUEST_METHOD']=='POST'){
$user=$this->storage->login($_POST['login'], $_POST['password']);
if(!user){die('Nieprawidłowa nazwa użytkownika lub hasło!');}
$this->name=$user['name'];
$this->rank=$user['ranga'];
$_SESSION['zalogowany']=true;
$_SESSION['name']=$this->name;
$_SESSION['rank']=$this->rank;
}
}
$user=new user(new mysqlStorage);
$user->zaloguj()
}
?>
Kod
<?php
public function rejestracja($name, $password, $email, $regdate);
?>
public function rejestracja($name, $password, $email, $regdate);
?>
Kod
<?php
public function rejestracja($name, $password, $email, $regdate){
$stmt=$pdo->prepare('INSERT INTO `users` VALUES(NULL, :name, :password, :email, :regdate, 2)');
$stmt->bindValue(':name', $name);
$stmt->bindValue(':password', md5($password));
$stmt->bindValue(':email', $email);
$stmt->bindValue(':regdate', $regdate);
$stmt->execute();
}
?>
Kod
<?php
public function register(){
$this->storage->rejestracja($_POST['name'], $_POST['password'], $_POST['email'], date('d-m-Y'));
}
?>
public function register(){
$this->storage->rejestracja($_POST['name'], $_POST['password'], $_POST['email'], date('d-m-Y'));
}
?>