| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | ||
| Gast
Beiträge: n/a
| Zitat:
session_start() setzt auch nur einen cookie (wenn php so eingestellt ist. Per default ist es so). setcookie() kann nur nicht mehr erfolgreich aufgerufen werden, wenn Ausgaben an den Browser gesendet wurden. Aber das ist unabhängig von session_start() immer so. Und dem Benutzer ohne weitere Authorisierung erlauben, den Benuzernamen in der session festzulegen, muss einfach falsch sein. Allerspätestens bei Code: if(isset($_GET['meta_refresh_set_cookie'])) {
setcookie('username', $_GET['username']);
}
| |
| | |
| Erfahrener Benutzer Registriert seit: 07.11.2003
Beiträge: 526
![]() | ja das ist mir schon klar. ich hatte das ja nurmal schnell zum testen geschrieben ob das cookie da ist (auf meinem localhost). natürlich werde ich dann noch eine db abfrage machen und den usernamen im cookie mit dem ebenfalls in einem cookie gespeicherten passwort mit der db zu verlgeichen. dass passwortcookie werde ich md5 verschlüsseln. kannst du mir einen tipp geben wie ich das machen soll damit nicht eine andere seite auch ein cookie mit dem namen hat? bsp. domain.com.username oder so?
__________________ mfg Alexander Haim |
| |
| | |
| Erfahrener Benutzer Registriert seit: 07.11.2003
Beiträge: 526
![]() | genau. einfach um die funktion eingeloggt bleiben. wie hier im forum. ich habe das jetzt so gelöst und denke dass das halbwegs sicher ist: login.php: formular mit folgenden variablen: username, password, remember_login bei abschicken wird in db username auf vorhandensein geprüft, dann ob das passwort zum usernamen passt. wenn das alles passt wird der username in $_SESSION['username'] gespeichert. wenn remember_login == 1 dann wird eine $_SESSION['remember_login'] mit dem wert 1 gesetzt. in der eigentlichen geschützten datei dann, bspw. admin.php wird als 1. die session_start() gesetzt, dann if($_SESSION['remember_login']) ein cookie 'domain_username' mit dem $_SESSION['username'] und ein cookie 'domain_password' mit md5($_SESSION['password']. danach gleich unset($_SESSION['password']). beim überprüfen auf das cookie wird das nochmal abgefragt. so müsste es ja passen oder? hier der anfang der admin.php: warum kann man hier den [ php] befehl nicht verwenden ohne dass die zeilen nicht mehr umgebrochen werden? Code: session_start();
$SID = session_id();
if(isset($_GET['logout'])) {
unset($_SESSION['username']);
setcookie('pd_username', '');
setcookie('pd_password', '');
$_SESSION['logout'] = '1';
}
if(isset($_SESSION['remember_login']) && $_SESSION['remember_login'] == '1') {
setcookie('pd_username', $_SESSION['username'], time() + 4838400);
setcookie('pd_password', md5($_SESSION['password']), time() + 4838400);
unset($_SESSION['password']);
unset($_SESSION['remember_login']);
}
if(isset($_COOKIE['pd_username']) && $_SESSION['logout'] != '1' && !isset($_SESSION['username'])) {
$sql = 'SELECT admin_username,
admin_password
FROM '.TABLE_ADMIN.'
WHERE admin_username = \''.$_COOKIE['pd_username'].'\'';
$query = mysql_query($sql);
if(mysql_num_rows($query) > 0) {
$data = mysql_fetch_array($query);
if(md5($data['admin_password']) == $_COOKIE['pd_password']) {
$_SESSION['username'] = $_COOKIE['pd_username'];
}
}
}
if(!isset($_SESSION['username']) || $_SESSION['logout'] == '1') {
$_SESSION['cont'] = 'login';
} else {
if(isset($_GET['cont']) && !empty($_GET['cont']) && file_exists(DIR_WS_ADMIN.$_GET['cont'].'.php')) {
$_SESSION['cont'] = $_GET['cont'];
}
elseif(!isset($_GET['cont']) || empty($_GET['cont'])) {
$_SESSION['cont'] = 'start';
} else {
$_SESSION['cont'] = 'start';
}
}
__________________ mfg Alexander Haim |
| |
| | |
| Erfahrener Benutzer Registriert seit: 07.11.2003
Beiträge: 526
![]() | also firefox und die haben den ja. aber der mistige internet explorer wohl nicht, denn bei uns im modellbauclub jammern immer alle: "kannst du nicht eine cookie funktion machen, weil immer einloggen ist so lästig". tja... die faulheit der user. danke nochmal für deine tipps. so sicher wie möglich habe ich es jetzt eh gemacht oder? wie ich noch mehr sicherheit zustandebringe fällt mir jetzt nicht ein.
__________________ mfg Alexander Haim |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Sessions Problem | StephenKing | PHP Tipps 2008 | 3 | 16.10.2007 08:30 |
| Problem mit Cookies | JeeZ | PHP Tipps 2006 | 2 | 08.10.2006 17:59 |
| Komisches Problem mit sessions | FBI | PHP Tipps 2007 | 5 | 22.11.2005 14:15 |
| Problem mit Sessions unter PHP 4.4.0 | betrazivis | PHP-Fortgeschrittene | 1 | 12.10.2005 19:21 |
| SESSIONS über MYSQL Problem - schreiben lesen | Cyberbob_at_tot | PHP Tipps 2005-2 | 9 | 19.09.2005 13:17 |
| header() und Sessions | Stümper | PHP Tipps 2005 | 8 | 02.06.2005 20:12 |
| [Erledigt] php mail() header & Spam Problem | PHP-Fortgeschrittene | 4 | 04.05.2005 12:31 | |
| problem mit header | PHP Tipps 2004 | 4 | 06.10.2004 17:19 | |
| [Erledigt] Sessions: Cookies mit Zertifikat | PHP-Fortgeschrittene | 0 | 16.09.2004 22:01 | |
| [Erledigt] ZIP Download - Header Problem | PHP-Fortgeschrittene | 1 | 19.08.2004 02:41 | |
| header ("location: ") Problem | PHP Tipps 2004 | 3 | 18.08.2004 12:03 | |
| header problem | PHP Tipps 2004 | 8 | 08.08.2004 00:35 | |
| Cookies in Sessions umwandeln | PHP Tipps 2004 | 1 | 04.07.2004 16:09 | |
| Sessions mit und ohne Cookies (die 100.?) | PHP Tipps 2004 | 2 | 02.07.2004 15:30 | |
| Problem mit header() | PHP Tipps 2004 | 6 | 13.06.2004 16:14 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| mit cookie anmeldung umgehen, php cookie login mit ie nicht möglich, cookies aus umgehen, cookies header problem, if(!isset($cont), php header umgehen, php cookies session header, username conturi password, logout cookie und session php, \passwort\ \internet explorer\ \nach logout\ \cookie\, cookie setzen umgehen, session php cokkie gesetzt problem, php cookie nach header setzen, ie seitenaufruf nach logout möglich, php cookies von 3 anbieter umgehen, session login um remember erweitern, session cookie umgehen, http://www.php.de/php-tipps-2006/39574-problem-bei-sessions-komb-m-cookies-header-umgehen.html, $_get header cookie, sicherheitsüberprüfung sessions php |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.