Size: a a a

2020 February 09

DD

Do Din in phpGeeksJunior
бинго
источник

DD

Do Din in phpGeeksJunior
а почему7
источник

Г

Глеб in phpGeeksJunior
да, только проверку на наличие добавь
источник

Г

Глеб in phpGeeksJunior
а потому что в $login или $pass можно прислать часть запроса и другого, например поменять пароль пользователя.
источник

Г

Глеб in phpGeeksJunior
такой тип атаки зовется иньекциями
источник

Г

Глеб in phpGeeksJunior
источник

МЗ

Максим Завитаев... in phpGeeksJunior
Do Din
if(!empty($login) && !empty($pass)){
   $query = "SELECT id , name, password FROM best WHERE name = '$login' AND password = '$pass'";

   $result = mysqli_query($link, $query);
   // print_r($result);

   if (mysqli_num_rows($result) == 1) {
     $row = mysqli_fetch_assoc($result);

     setcookie('id', $row['id'], time() + (60*60) );
     setcookie('name', $row['name'], time() + (60*60) );

header('Location: index.php');
 
}else{
       echo "Такой пользователь не найден";
   }

}
Кто вас такому учил??? Не нужно хранить id пользователя в куке!!! Куку можно заменить и таким образом поменяв ид пользователя выполнять действия от другого пользователя
источник

DD

Do Din in phpGeeksJunior
<?php
require 'connect.php';
if(!isset($_COOKIE['id'])){
 if (isset($_POST['submit'])) {
   $login = mysqlI_real_escape_string($_POST['login']);
   $pass = mysqlI_real_escape_string((md5($_POST['pass'])));

   if(!empty($login) && !empty($pass)){
   $query = "SELECT id , name, password FROM best WHERE name = '$login' AND password = '$pass'";

   $result = mysqli_query($link, $query);
   // print_r($result);

   if (mysqli_num_rows($result) == 1) {
     $row = mysqli_fetch_assoc($result);

     setcookie('id', $row['id'], time() + (60*60) );
     setcookie('name', $row['name'], time() + (60*60) );

header('Location: index.php');
 
}else{
      $err = "Такой пользователь не найден";
   }

}


}
}
?>
источник

DD

Do Din in phpGeeksJunior
кореш
источник

DD

Do Din in phpGeeksJunior
так?
источник

DD

Do Din in phpGeeksJunior
Максим Завитаев
Кто вас такому учил??? Не нужно хранить id пользователя в куке!!! Куку можно заменить и таким образом поменяв ид пользователя выполнять действия от другого пользователя
я новичок, я знаю что все можно сделать по другому
источник

DD

Do Din in phpGeeksJunior
но я хочу пока так
источник

DD

Do Din in phpGeeksJunior
я знаю про сессии
источник

МЗ

Максим Завитаев... in phpGeeksJunior
Do Din
<?php
require 'connect.php';
if(!isset($_COOKIE['id'])){
 if (isset($_POST['submit'])) {
   $login = mysqlI_real_escape_string($_POST['login']);
   $pass = mysqlI_real_escape_string((md5($_POST['pass'])));

   if(!empty($login) && !empty($pass)){
   $query = "SELECT id , name, password FROM best WHERE name = '$login' AND password = '$pass'";

   $result = mysqli_query($link, $query);
   // print_r($result);

   if (mysqli_num_rows($result) == 1) {
     $row = mysqli_fetch_assoc($result);

     setcookie('id', $row['id'], time() + (60*60) );
     setcookie('name', $row['name'], time() + (60*60) );

header('Location: index.php');
 
}else{
      $err = "Такой пользователь не найден";
   }

}


}
}
?>
Хеширование в md5 очень не надежный метод
источник

DD

Do Din in phpGeeksJunior
но хочу начать и сделать все с головы, а потом переделывть
источник

DD

Do Din in phpGeeksJunior
пассворд хеш
источник

DD

Do Din in phpGeeksJunior
да
источник

Cп

CSS программист... in phpGeeksJunior
Максим Завитаев
Хеширование в md5 очень не надежный метод
Хотя бы хеширует. )
источник

Г

Глеб in phpGeeksJunior
Do Din
<?php
require 'connect.php';
if(!isset($_COOKIE['id'])){
 if (isset($_POST['submit'])) {
   $login = mysqlI_real_escape_string($_POST['login']);
   $pass = mysqlI_real_escape_string((md5($_POST['pass'])));

   if(!empty($login) && !empty($pass)){
   $query = "SELECT id , name, password FROM best WHERE name = '$login' AND password = '$pass'";

   $result = mysqli_query($link, $query);
   // print_r($result);

   if (mysqli_num_rows($result) == 1) {
     $row = mysqli_fetch_assoc($result);

     setcookie('id', $row['id'], time() + (60*60) );
     setcookie('name', $row['name'], time() + (60*60) );

header('Location: index.php');
 
}else{
      $err = "Такой пользователь не найден";
   }

}


}
}
?>
так да, но на сколько я знаю самый хороший метод это через плейсхолдеры.
источник

DD

Do Din in phpGeeksJunior
источник