• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Logowanie PHP korzytające z OOP i PDO

Cloud VPS
0 głosów
320 wizyt
pytanie zadane 3 czerwca 2018 w PHP przez karol928 Początkujący (320 p.)

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.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 252 wizyt
pytanie zadane 14 maja 2019 w PHP przez mi-20 Stary wyjadacz (13,250 p.)
0 głosów
2 odpowiedzi 748 wizyt
pytanie zadane 29 stycznia 2017 w PHP przez niezalogowany
0 głosów
1 odpowiedź 357 wizyt
pytanie zadane 7 stycznia 2018 w PHP przez jak Nowicjusz (150 p.)

93,459 zapytań

142,454 odpowiedzi

322,724 komentarzy

62,837 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...