Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
<?php
session_start();
// Prüfen, ob ein Autologin des Users stattfinden muss
if(isset($_COOKIE['Autologin']) AND !isset($_SESSION['UserID'])){
$sql = "SELECT
ID
FROM
User
WHERE
Autologin = '".mysql_real_escape_string($_COOKIE['Autologin'])."'
";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
if(mysql_num_rows($result) == 1)
doLogin($row['ID'], '1');
}
// Online Status der User aktualisieren
if(isset($_SESSION['UserID'])){
$sql = "UPDATE
User
SET
Letzte_Aktion = '".time()."'
WHERE
ID = '".$_SESSION['UserID']."'
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
// User ohne Autologin ausloggen
$sql = "UPDATE
User
SET
SessionID = NULL,
Autologin = NULL,
IP = NULL
WHERE
'".(time()-(60*30))."' > Letzte_Aktion AND
Autologin IS NULL
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
// Kontrollieren, ob ein automatisch ausgeloggter User noch eine gültige Session besitzt
if(isset($_SESSION['UserID'])){
$sql = "SELECT
SessionID
FROM
User
WHERE
ID = '".$_SESSION['UserID']."'
";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
if(!$row['SessionID']){
$_SESSION = array();
session_destroy();
}
}
?>
CREATE TABLE IF NOT EXISTS `users` (
`UserID` int(11) NOT NULL auto_increment,
`UserSession` varchar(32) default NULL,
`fname` varchar(255) NOT NULL default '',
`lname` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`pwd` varchar(32) NOT NULL default '',
`addr` varchar(255) NOT NULL default '',
`city` varchar(255) NOT NULL default '',
`country` varchar(255) NOT NULL default '',
`zipcode` varchar(255) NOT NULL default '',
`phone` varchar(255) NOT NULL default '',
`visits` int(8) NOT NULL,
`datesignup` datetime NOT NULL,
`lastchange` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`UserID`),
UNIQUE KEY `email` (`email`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
<?php
session_start();
// Online Status der User aktualisieren
if(isset($_SESSION['UserID'])){
$sql = "UPDATE
users
SET
Letzte_Aktion = '".time()."'
WHERE
UserID = '".$_SESSION['UserID']."'
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
// User ohne Autologin ausloggen
$sql = "UPDATE
users
SET
UserSession = NULL,
IP = NULL
WHERE
'".(time()-(60*30))."' > Letzte_Aktion //Hier wird festgelegt wie lange ein User ohne Aktion als online gilt, bevor die session zerstört wird!
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
// Kontrollieren, ob ein automatisch ausgeloggter User noch eine gültige Session besitzt
if(isset($_SESSION['UserID'])){
$sql = "SELECT
UserSession
FROM
users
WHERE
UserID = '".$_SESSION['UserID']."'
";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
if(!$row['SessionID']){
$_SESSION = array();
session_destroy();
}
}
?>
IP VARCHAR(15) NOT NULL
Letzte_Aktion INT NOT NULL DEFAULT 0