Autor Zpráva
blazen
Profil *
zdarec, chtel bych v prihlaseni na webu udelat autologin, budu to resit asi formou zaskrtavaciho policka, ale momentalne mam proste formular, kde jen zadam udaje a zpracuju to dalsim skriptem a vse funguje pekne jak ma... jen samozdrejme po vypnuti prohlizece jsem odhlasen a musim znovu zadavat udaje... nejlip by bylo kdyby po prihlaseni zustal uzivatel prihlaseny az do te doby, kdy nezvoli na webu "odhlasit" coz proste jeho prihlaseni zrusi... Pouzivam u toho vseho sessions a napisu sem ty nejspis ty casti kodu, ktere potrebuju upravit:

Formular pro prihlaseni/odhlaseni:


<form method="post" action="transakce.php">

<?php

if (!isset($_SESSION['id_uživatele'])) {

echo '<input class="pole" name="nick" maxlength="255">&nbsp;';

echo '<input class="pole" name="passwd" maxlength="50" type="password">&nbsp;';

echo '<input class="button" type="submit" name="akce" value="ok">';

echo '<span class="verdana">&nbsp;[&nbsp;';
echo '<a class="login" href="ucet.php">Registrace</a>&nbsp;|&nbsp;';
echo '<a class="login" href="zapomenute_heslo.php">Heslo</a>&nbsp;]&nbsp;';

} else {

echo '&nbsp;<input class="button" type="submit" name="akce" value="Odhlásit">&nbsp;';
echo '<span class="verdana"><b>Uživatel: </b>'. $_SESSION['jméno_uživatele'].'</span>';
echo '<span class="verdana">&nbsp;[&nbsp;';
echo '<a class="login" href="index.php?site=profil&user='.$_SESSION['id_uživatele'].'">Profil </a>&nbsp;|&nbsp;';
echo '<a class="login" href="ovladaci_panel.php">Úpravy</a>&nbsp;|&nbsp;';
echo '<a class="login" href="clanek.php">Napište èlánek</a>&nbsp;]&nbsp;';
echo '</font></span>';

}

?>

</form>



Zpracování prihlaseni a odhlaseni:


case 'ok':

if (isset($_POST['nick'])
and isset($_POST['passwd']))
{
$sql = "SELECT * " .
"FROM users " .
"WHERE name='". $_POST['nick']. "' " .
"AND passwd='". $_POST['passwd']. "'";
$výsledek = mysql_query($sql, $spojení)
or die('Nebyly nalezeny informace o uzivateli; ' .
mysql_error());

if ($rádek = mysql_fetch_array($výsledek)) {
session_start();
$_SESSION['id_uživatele'] = $rádek['user_id'];
$_SESSION['oprávnení_uživatele'] = $rádek['access_lvl'];
$_SESSION['jméno_uživatele'] = $rádek['name'];

}
}
presmerovat('index.php');
break;

case 'Odhlásit':
session_start();
session_unset();
session_destroy();

presmerovat('index.php');
break;



Tak diky moc za pomoc... proste chci aby uzivatel po prihlaseni zustal prihlaseny i kdyz vypne prohlizec a pak az da odhlasit, tak se az odhlasi... nebo nastavit treba nejakou dlouhou dobu prihlaseni, predpokladam reseni pomoci cookies... hodne jsem zkousel ale nic nepomohlo :( to je zatim vse diky za odpovedi a rady!
YaD
Profil
v PHP viem to ho málo, ale nebolo by lepšie keby sa odhlásil, aby užívaťeľovy niekto neodchytil spojenie
blazen
Profil *
no on by si pri prihlaseni zaskrtnul jestli to chce nechat na delsi dobu aj pak kdyz se na stranku vrati, protoze je nekdy otravny kdyz mam na tom webu udelanejch hodne funkci jen jako prihlaseny a furt bys to musel znovu psat... takze lepci si to treba zaskrtnout, ze na svem positaci to bude mit porad a pak se jen proste odhlasi a pri prihlasovani si to nezaskrtne kdyz to nebude chtit... ale taky v tech kodech co sem nahore poslal to mam bez zakrtnuti, jen bych prosil o radu jak to zprovoznit? :)
loyza
Profil
http://www.megablog.cz/Pamatuj-si-mne-na-tomto-pocitaci-t151.html
Meldo
Profil
Nieco taketo?


http://meldo.sk/index.php?read=54
blazen
Profil *
http://meldo.sk/index.php?read=54

no to je formular kterym zapisu data do cookies a pak je zase smazu... a pracuji tam s cookie ja potrebuju nechat session, ale mohl bych to takhle udelat ze bych to pak cetl pres cookie. Bude to ale hodne co prekopavat :( videl sem neco jako session_set_cookie_params() ale nejak mi to nefungovalo!
Toto téma je uzamčeno. Odpověď nelze zaslat.