Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Czy to jest bezpieczne - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: Czy to jest bezpieczne (/thread-czy-to-jest-bezpieczne)



Czy to jest bezpieczne - qetli - 15-03-2011

Czy to jest bezpieczne:
Kod PHP:
<?php include("config.php"); ?>
<?php
$login 
$_POST['login'];
$haslo $_POST['haslo'];
$haslo addslashes($haslo);
$login addslashes($login);
$login htmlspecialchars($login);

if (
$_GET['login'] != '') { //jezeli ktos przez adres probuje kombinowac
exit;
}
if (
$_GET['haslo'] != '') { //jezeli ktos przez adres probuje kombinowac
exit;
}
$haslo md5($haslo); //szyfrowanie hasla
    
if (!$login OR empty($login)) {
include(
"head2.php");
echo 
'<p class="alert">Wypełnij pole z loginem!</p>';
include(
"foot.php");
exit;
}
    if (!
$haslo OR empty($haslo)) {
include(
"head2.php");
echo 
'<p class="alert">Wypełnij pole z hasłem!</p>';
include(
"foot.php");
exit;
}
$istnick mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM `uzytkownicy` WHERE `nick` = '$login' AND `haslo` = '$haslo'")); // sprawdzenie czy istnieje uzytkownik o takim nicku i hasle
    
if ($istnick[0] == 0) {
echo 
'Logowanie nieudane. SprawdĽ pisownię nicku oraz hasła.';
    } else {

$_SESSION['nick'] = $login;
$_SESSION['haslo'] = $haslo;

$zapytanie "UPDATE `uzytkownicy` SET `status` = 'online' WHERE `nick`='$nick'";
$idzapytania mysql_query($zapytanie);    

header("Location: indeks.php");
}
?>



RE: Czy to jest bezpieczne - Morfeusz_2005 - 15-03-2011

Znaczy jeżeli dane są pobierane poprzez $_POST to z adresu raczej i tak nikt nic nie wykombinuje, ale mogę się mylić.


RE: Czy to jest bezpieczne - Pedro84 - 15-03-2011

Nie jest.

1. http://php.net/manual/pl/function.mysql-real-escape-string.php
2. http://www.google.pl/search?q=prepared+statements&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:pl:official&client=firefox-a