Jeg har gang i et community hvori jeg gerne ville have onlinetid.
Jeg har prøvet, men det virker ikke :/.
Jeg viser jer her hvordan mine filer ser ud:
opret.php
----------------------------------------------------------------------------
<? include("mysql/mysql.php"); ?>
<html>
<head>
</head>
<?
if ($submit) {
if (!$brugernavn || !$kodeord || !$kodeord2 || !$email || !$kon) {
$fail .= "<li>Du udfyldte ikke alle felterne.<br>";
}
addslashes($brugernavn);
$username_check = mysql_query("SELECT id FROM henrik_community WHERE(brugernavn='$brugernavn')");
if (mysql_num_rows($username_check) > 0) {
$fail .= "<li>Username er optaget.<br>";
}
if (strlen($brugernavn) > 15) {
$fail .= "<li>Username må max være 15 karakterer langt. Dit er ".strlen($brugernavn)." karakterer langt.<br>";
}
if (strlen($brugernavn) < 3) {
$fail .= "<li>Username skal minimum være 3 karakterer langt.<br>";
}
if ($brugernavn == "") {
$fail .= "<li>Du skal skrive et brugernavn.<br>";
}
if (ereg("<", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde html tags.<br>";
}
if (ereg("\\"", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde \\".<br>";
}
if (ereg(",", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde \\".<br>";
}
if (ereg("%", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde %.<br>";
}
if (ereg("'", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde '.<br>";
}
if (ereg("\\.", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke indeholde \\".\\".<br>";
}
if (ereg("^ ", $brugernavn)) {
$fail .= "<li>Brugernavn må ikke starte med [Space].<br>";
}
if (substr($brugernavn, -1) == " ") {
$fail .= "<li>Brugernavn må ikke ende på space.<br>";
}
if (eregi("[^a-z0-9] ",$brugernavn)) {
$fail .= "<li>Ulovlige tegn i username. Brug kun A-Z, a-z og 0-9<br>";
}
if ($kodeord == "") {
$fail .= "<li>Du skal skrive et password.<br>";
}
if ($kodeord != $kodeord2) {
$fail .= "<li>De 2 password er ikke ens.<br>";
}
if (strlen($kodeord) < 6) {
$fail .= "<li>Password skal minimum være 6 bogstaver/tal langt.";
}
if (strlen($kodeord) > 16) {
$fail .= "Password må max være 16 bogstaver/tal langt.";
}
if (!ereg("@",$email) && !ereg(".",$email)) {
$fail .= "<li>Ugyldig email adresse.<br>";
}
if (ereg("commander", strtolower($username))) {
$fail .= "<li>Brugernavn må ikke indeholde \\"Commander\\".<br>";
}
if ($kon != "han" && $kon != "hun")
{
$fail .= "<li>Du skal vælge enten dreng/mand eller pige/kvinde i køn.<br>";
}
if (!$fail) {
$kodeord = ($kodeord);
$time=time();
mysql_query("INSERT INTO henrik_community (brugernavn,kodeord,email,kon,oprettet) VALUES('$brugernavn','$kodeord','$email','$kon','$time')") or die(mysql_error());
$oprettet = ok;
print "<font colot=green>Din bruger er nu oprettet og er klar til brug!</font>";
} else {
print $fail;
}
}
if (!$oprettet)
{
?>
</p>
<form action="opret.php" method="post">
<table border="0" width="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="103"><font size="1" face="Verdana">Brugernavn:</font></td>
<td width="839"><font size="1" face="Verdana">
<input class="text" type="text" name="brugernavn" value="<?=$brugernavn?>" maxlength="10" style="background-color:rgb(201,204,211); border-width:1; border-color:black;" size="20">
*</font></td>
<td> </td>
</tr>
<tr>
<td width="103"><font size="1" face="Verdana">Kodeord: </font></td>
<td width="839"><font size="1" face="Verdana">
<input class="text" type="password" name="kodeord" value="<?=$kodeord?>" style="background-color:rgb(201,204,211); border-width:1; border-color:black;" size="20">
*</font></td>
<td> </td>
</tr>
<tr>
<td width="103"><font size="1" face="Verdana">Kodeord igen: </font></td>
<td width="839"><font size="1" face="Verdana">
<input class="text" type="password" name="kodeord2" value="<?=$kodeord2?>" style="background-color:rgb(201,204,211); border-width:1; border-color:black;" size="20">
*</font></td>
<td><br></td>
</tr>
<tr>
<td width="103"><font size="1" face="Verdana">Email: </font></td>
<td width="839"><font size="1" face="Verdana"><input class="text" type="text" name="email" value="<?=$email?>" style="background-color:rgb(201,204,211); border-width:1; border-color:black;">
*</font></td>
<td><br></td>
</tr>
<tr>
<td width="103" height="6"><font size="1" face="Verdana">Køn: </font></td>
<td width="839" height="6">
<p><font size="1" face="Verdana">Hvid Dreng <input <? if ($kon=="han") { print "checked "; } ?>type="radio" value="han" name="kon" style="background-color:white;" size="20"> Hvid
Pige <input <? if ($kon=="hun") { print "checked "; } ?> type="radio" value="hun" name="kon">
*</font></p>
</td>
<td height="29" rowspan="2"> </td>
</tr>
<tr>
<td width="103" height="12">
<p><font face="Verdana" size="1"> </font></p>
</td>
<td width="839" height="12"> <p align="left"><font size="1" face="Verdana"><br><input type="submit" value="Opret" name="submit" class="submit" style="background-color:rgb(201,204,211); border-width:1; border-color:black;"></font></td>
</tr>
</table>
<?
}
?></form>
<p align="center"> </p>
<p align="center"><font face="Verdana" size="1"><b>Alle felter markeret med * </b><U><b>skal</b></U><b> udfyldes.</b></font></p>
</body>
</html></SCRIPT>
----------------------------------------------------------------------------
login.php
----------------------------------------------------------------------------
<html>
<head>
</head>
<form action="loginok.php" method="post">
<div align="left">
<table width="343">
<tr>
<td width="181" height="24">
<p align="left"><font face="Verdana" size="1">Brugernavn:</font></p></td>
<td width="152" height="24">
<p align="left"><font size="1" face="Verdana"> <input name="brugernavn" class="text" size="19" style="BORDER-TOP-WIDTH: 1px; BORDER-LEFT-WIDTH: 1px; BORDER-LEFT-COLOR: black; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: black; BACKGROUND-COLOR: rgb(198,200,206); BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: black"
></font></p></td>
</tr>
<TR>
<td width="181" height="7">
<p align="left"><font size="1" face="Verdana">Kodeord:<br></font></p></td>
<td width="152" height="7">
<p align="left"><font size="1" face="Verdana"> <input type="password" name="kodeord" class="text" size="19" style="BORDER-TOP-WIDTH: 1px; BORDER-LEFT-WIDTH: 1px; BORDER-LEFT-COLOR: black; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: black; BACKGROUND-COLOR: rgb(198,200,206); BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: black"
></font></p></td></TR>
<tr>
<td width="181" height="11">
<p align="left"><font size="1" face="Verdana"></font> </p></td>
<td width="152" height="11">
<p align="left"><font size="1" face="Verdana"> <input type="submit" value="Login" class="submit" style="BORDER-TOP-WIDTH: 1px; BORDER-LEFT-WIDTH: 1px; BORDER-LEFT-COLOR: black; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: black; BACKGROUND-COLOR: rgb(198,200,206); BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: black" name="login"></font></p></td>
</tr>
</table>
</form></DIV>
<P align="center"> </P><form action="loginok.php" method="post">
<p align="left"><font color="black" size="1" face="Verdana"><?
?>
</font>
</p>
</form>
</body>
</html>
----------------------------------------------------------------------------
loginok.php
----------------------------------------------------------------------------
<? include("mysql/mysql.php"); ?>
<html>
<head>
</head>
<?
$time=time();
$tid = mysql_query("SELECT id FROM henrik_community WHERE(brugernavn='brugernavn')");
$vis_tid = mysql_fetch_array($tid);
if (!$id) {
$kodeord = ($kodeord);
$login_tjek = mysql_query("SELECT id,kodeord FROM henrik_community WHERE(brugernavn='$brugernavn')");
$vis_logintjek = mysql_fetch_array($login_tjek);
if ($kodeord!= $vis_logintjek[kodeord]) {
print "<font color=red>Forkert brugernavn eller password!</font>";
exit;
} else {
if ($login) {
$id= $vis_logintjek[id];
session_register(kodeord);
$valign="middle";
mysql_query("UPDATE henrik_community SET logins=logins+1 WHERE(id='$id')");
print "
<meta http-equiv=\\"refresh\\" content=\\"0;url=loginok.php\\">
";
exit;
}
}
}
$hent_info = mysql_query("SELECT brugernavn,onlinetid FROM henrik_community WHERE(id='$id')");
$vis_info = mysql_fetch_array($hent_info);
$hour = floor($row_info[onlinetid]/60/60);
$tempmin = $row_info[onlinetid]/60;
$min = floor($tempmin-$hour*60);
echo "<b>Online Tid: </b>$hour timer og $min minutter<br>";
?>
<a href="logout.php">Log af</a>
</font></body>
</html>
----------------------------------------------------------------------------
logout
----------------------------------------------------------------------------
<?
include("mysql/mysql.php");
$time=time();
$hent_tid = mysql_query("SELECT id FROM henrik_community WHERE(brugernavn='brugernavn')");
$vis_tid = mysql_fetch_array($hent_tid);
$hent_info = mysql_query("SELECT onlinetid FROM henrik_community WHERE(id='$id')");
$vis_info = mysql_fetch_array($hent_info);
if ($vis_info[online] != "nej") {
mysql_query("INSERT INTO henrik_community (time,f,t) VALUES($vis_info[brugernavn] er logget ud.','$time','$vis_tid[id]','0')");
$plustime = time()-$vis_info[online];
}
mysql_query("UPDATE henrik_community SET ".$ext."onlinetid=onlinetid+$plustime WHERE(id='$id')");
?>
<font face="verdana" size="2">Du er nu logget af!</font>
---------------------------------------------------------------------------
Jeg har min mysql database, men den ved jeg er iorden så den ville jeg ikke oplyse.
Men min tabel kan muligvis være fejl i, ved ikke men den ser således ud:
CREATE TABLE `henrik_community` (
`id` int(4) unsigned NOT NULL auto_increment,
`brugernavn` varchar(255) NOT NULL default '',
`kodeord` varchar(255) NOT NULL default '',
`onlinetid` int(10) NOT NULL default '0',
`status` tinyint(1) NOT NULL default '0',
`oprettet` varchar(255) NOT NULL,
`sex` char(3) NOT NULL default '',
`ip` varchar(20) NOT NULL,
`online` char(3) NOT NULL,
PRIMARY KEY (`id`,`id`)
) TYPE=MyISAM;
Det var det jeg håber virkelig der er nogen der kan hjælpe!!
1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 5 karma
Når de logger ind, så kan du fx skrive tidspunktet til din database og starte en session. Hvis det ikke er når de logger ind, men når de går på siden, så kan du jo bare skrive deres ip til databasen.
Når de så surfer rundt på siden så kan du bare tage det aktuelle tidspunkt og sammenligne med resultatet fra databasen.
hvis det skal være online tid i alt... så... kan jeg ikke lige overskue, men kan sikkert laves på samme måde med lidt javascript inkluderet.