Cześć,
Mam problem z projektem, przerabiam z postaci strukturalnej do OOP i trafiłem na problem przy logowaniu. NIe wyskakują mi błędy a pusta strona i to wszystko nie wiem w czym może być problem, być może zgubiony jakiś znak lub nie dopisana jakaś linijka kodu. A być może złe użycie danej funkcji. Proszę o informację .
plik login_script.php
<?php
include_once 'config.php';
class User{
private $db;
public function _construct()
{
$this->db = new ConnectionDB();
$this->db = $this->db->getConnection();
}
public function Login($user_email,$user_pass)
{
$user_email = $_POST['email'];
$user_pass = $_POST['pass'];
if(!empty($user_email) && !empty($user_pass))
{
$query = "SELECT * FROM users WHERE user_email='$user_email' AND user_pass='$user_pass'";
$st = $this->db->prepare($query);
$st->execute(array($user_email,$user_pass));
$result = $st -> fetchAll();
var_dump($result);
if(count($result) >0)
{
echo "good";
echo "<script>window.open('profile.php','_self')</script>";
}
else
{
echo "<script>alert('Email or password is not correct, try again!')</script>";
echo "<script>window.open('index.php','_self')</script>";
}
}
else
{
echo "<script>alert('Please enter username and password and try again!')</script>";
echo "<script>window.open('index.php','_self')</script>";
}
}
plik połączenia z bazą config.php
<?php
class ConnectionDB{
//Specyfikacja bazy danch
private $servername = "localhost";
private $username = "root";
private $password = "";
private $database = "library";
public $conn;
//Nawiązywanie połączenia
public function getConnection(){
$this->conn = null;
try{
$this->conn = new PDO('mysql:host=' .$this->servername . ';dbname=' . $this->database, $this->username, $this->password);
}
catch(PDOException $exception){
echo "Connection error: " .$exception->getMessage();
}
return $this->conn;
}
}
?>
w logowaniu mam dwie zmienne email i pass i to w tym są przechowywane dane przy logowaniu a w bazie te pozycje to : user_email i user_pass.
class
, wcale nie oznacza, że Twój kod jest obiektowy :-) Wszystko podane przez Ciebie wyżej jest strukturalne.