login.php
<?php
if(isset($_POST['login']) && !empty($_POST['login'])){
$email = $_POST['email'];
$password = $_POST['password'];
if(!empty($email) or !empty($password)){
$email = $getFromU->chekInput($email);<------ошибка
$password = $getFromU->chekInput($password);
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
$error = "Invalid format";
}else{
if($getFromU->login($email, $password) === false){
$error = "The email or password is incorrect";
}
}
}else{
$error = "Please enter username password";
}
}
?>
user.php
<?php
class User {
protected $pdo;
function __construct($pdo){
$this->pdo = $pdo;
}
public function checkInput($var){
$var = htmlspecialchars($var);//Преобразует специальные символы в HTML-сущности
$var = trim($var);//Удаляет пробелы (или другие символы) из начала и конца строки
$var = stripcslashes($var);//Удаляет экранирование символов, произведенное функцией addcslashes()
return $var;
}
public function login($email,$password){
$stmt = $this->pdo->prepare("SELECT 'user_id' FROM 'users' WHERE 'email' = :email AND 'password' = :password");//Подготавливает запрос к выполнению и возвращает ассоциированный с этим запросом объект
$stmt->bindParam(":email", $email, PDO::PARAM_STR);//bindParam — Привязывает параметр запроса к переменной. PDO::PARAM_STR - Представляет типы данных SQL CHAR, VARCHAR и другие строковые типы.
$stmt->bindParam(":password", md5($password), PDO::PARAM_STR);
$stmt->execute();//execute — Запускает подготовленный запрос на выполнение
$user = $stmt->fetch(PDO::FETCH_OBJ);//fetch — Извлечение следующей строки из результирующего набора. PDO::FETCH_OBJ: создает анонимный объект со свойствами, соответствующими именам столбцов результирующего набора
$count = $stmt->rowCount();//rowCount — Возвращает количество строк, модифицированных последним SQL запросом
if($count > 0){
$_SESSION['user_id'] = $user->user_id;
header('Location: home.php');
}else{
return false;
}
}
}
?>
init.php
<?php
include 'database/connection.php';
include 'classes/user.php';
include 'classes/tweet.php';
include 'classes/follow.php';
global $pdo;
session_start();
$getFromU = new User($pdo);
$getFromT = new Tweet($pdo);
$getFromF= new Follow($pdo);
define("BASE_URL", "http://twitter/")
?>
У вас метод называется checkInput, а вы пытаетесь вызвать chekInput.
Доброго времени суток... Вот на скооую руку написал...
<?php
// login.php file...
if(isset($_POST['email'])){
if(isset($_POST['pass'])){
if($_POST['email'] == '' || $_POST['pass'] == ''){
/* Не введен Email или Пароль... */
} else {
$login = htmlspecialchars(trim(stripcslashes($_POST['email'])));
$password = htmlspecialchars(trim(stripcslashes($_POST['pass'])));
userLogin($login, $password);
}
} else { /* Не пришел Пароль...*/ }
} else { /* Не пришел Email... */ }
function userLogin($l, $p){
// $l - Логин (email)
// $p - Пароль
// Здесь делаете проверку в MySql и так далее...
}
?>// End
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости