Witam, mam pytanko jakie logowanie najlepiej zrobic? tzn
Jezeli login jest ok i hasło ok to w ciastko wrzucic losowe cyferki i zapisac je np. w bazie i jezeli ciastko i to z bazy bedzie sie zgadzac to pokaze jakies dane dla uzytkownika tak?
<?php $_SESSION['nazwa']='wartosc'; ?>
<?php ?>
<?php // to oczywiscie bedzie z formularza $login= "login"; $haslo= "haslo"; $zapytanie = sql("SELECT * FROM ".$prefix."kontrahenci WHERE kontrahenci_login='$login' "); { $kontrahenci_haslo = $rekord['kontrahenci_haslo']; if($haslo == kontrahenci_haslo){ } } ?>
<?php class session { var $session_id; var $insert = 0; function session () { } else { $this -> insert = 1; } } function getValue ($name){ return $this -> values [$name]; } function setValue ($name, $str) { $this -> values [$name] = $str; } function sessionClose () { $maxTime = $time - SESSION_TIME; if ($this -> insert) mysql_query ("INSERT INTO `sessions` (`id`, `values`, `time`) VALUES ('{$this -> session_id}', '$values', '$time')"); else mysql_query ("UPDATE `sessions` SET `values`='$values', `time` = '$time' WHERE `id` = '{$this -> session_id}'"); } } ?>
<?php $query = sql("SELECT kontrahenci_login FROM ".$prefix."kontrahenci WHERE kontrahenci_login='$login'"); if($rekord == '1' ){ $ip = $_SERVER[ 'REMOTE_ADDR' ]; $_SESSION['login'] = $login; $_SESSION['haslo'] = $haslo; $_SESSION['ip'] = $ip; } } ?>
Dodałem do sesji IP bo jak ktos by dał link innej osobie to tamta osoba od razy była by zalogowana.
<?php $ipa = $_SERVER[ 'REMOTE_ADDR' ]; $dwa = $_SESSION['ip']; if($ipa == $dwa){ $login = $_SESSION['login']; $haslo = $_SESSION['haslo']; $query = sql("SELECT kontrahenci_login FROM ".$prefix."kontrahenci WHERE kontrahenci_login='$login'"); if($rekord == '1' ){ } } } ?>
Logujesz uzytkownika tylko na podstawie loginu. a co z haslem? Widze, ze w ifie sparawdzasz istnienie hasla, ale w zapytaniu juz go olałeś. ciut niebezpiecznie.
<?php $query = sql("SELECT kontrahenci_login FROM ".$prefix."kontrahenci WHERE kontrahenci_login='$login'"); ?>