Avatar billede nielschristiansen Nybegynder
18. december 2003 - 20:48 Der er 5 kommentarer og
1 løsning

hvordan får jeg lagt tidspunkt ind i my sql

hej jeg har lavet et login og nu vil jeg gerne have lagt et klokkeslet ind i databasen som for øvrigt er mysql jeg koder i php.

det jeg vil have lavet er et login der fungerer på den måde at når nogle logger sig ind kommer tidspunktet til at stå i posten tid ud for den enkelte bruger som jeg så i sidste ende kan bruge til at vise alle de brugere der er online på min side

min kode ser sådanne ud

<?php
function connect(){
if (!$db = mysql_connect("localhost","bruger","kode")) {
    print ("<h1>Kan ikke etablere forbindelse til databasen!</h1>\n");
    return 0;
    }else{
    mysql_select_db("bruger",$db);
    return 1;
    }
    } 
function check_user ($user, $password){
if (connect()){
$password = substr($password, 0, 8);
$sql = "select * from rdnwo_dk.bruger where brugernavn = '$user' and adgang = '$password'";
$dato_array = getdate();
$dato = $dato_array["hours"]."/".$dato_array["minutes"];
mysql_query("insert into rdnwo_dk.bruger where tid = '$dato'");
$result = mysql_query($sql);
if (mysql_num_rows($result)== 1){

return 1;
}else{
?>
<h3>beklager du er ikke godkendt!</h3>
<?


return 0;
}
}
}
if(!isset($user) or !check_user($user,$password)){
?>
<table border="0" width="100" height="150" cellspacing="0" frame="box"  style="background:#160D5B;border-left-color:#9C9A06;border-collapse:collapse;">
<thead  style="color:white;background-image:url(billeder/image1.gif);">

&nbsp&nbsp Login
</thead>
<tr>
<td>
<form action=<? echo $PHP_SELF;?> method="post">
&nbsp&nbsp&nbsp <p style="color:white;">Brugernavn:<br><input type="text" name="user" size="10"><br>
Password:<br> <input type="password" name="password" maxlength="15" size="8"><br>
<input type="submit" name="submit" value="Log ind">
</form>
</td>
</tr>
</table>
<?
}else {
?>
<table border="0" width="100" cellspacing="0" frame="box"  style="background:#160D5B;border-left-color:#9C9A06;border-collapse:collapse;">
<tr>
<thead  style="color:white;background-image:url(billeder/image1.gif);">

&nbsp&nbsp Log af</thead>
<td>
<h3 style="color:white;"> Du er logget ind som [R.D:NWO] <?print $user ?></h3>
<form action="http://www.rdnwo.dk" method="post">
<input type="submit" value="log af"><br>
<a href="php/opret.htm"target="midt">opret bruger</a>
</form>
</td>
</tr>
</table><br>
</center>
<center>
<table border="0" width="100" cellspacing="0" frame="box"  style="background:#160D5B;border-left-color:#9C9A06;border-collapse:collapse;">
<tr>
<thead  style="color:white;background-image:url(billeder/image1.gif);">

&nbsp&nbsp Downloads
</thead>
<td style="color:white;">

<img src="billeder/t.gif" alt=""> &nbsp <a href="map.htm" target="midt">Map</a> <br />
<img src="billeder/t.gif" alt=""> &nbsp <a href="update.htm" target="midt">Update</a><br />
<img src="billeder/t.gif" alt=""> &nbsp <a href="div.htm" target="midt">Diverse</a><br />
<img src="billeder/t.gif" alt=""> &nbsp <a href="logo.htm" target="midt">Logo</a><br />
</td></tr></table></center>
<?
}
?>

jeg håber der er nogle der kan hjælpe mig med mit problem

mvh
Niels Christiansen
Avatar billede mahler Nybegynder
18. december 2003 - 21:02 #1
jeg ville nok lave en ny tabel.
hvis du har et id (tal) på brugeren, er det mest effektivt at bruge, hvis ikke så kan følgende nok bruges:

1) lav en tabel, der ser sådan ud:

create table recentVisit (
    login char(10) not null,
    senestSet timestamp,
    primary key (login));

2) hver gang en bruger logger ind, så kald:

mysql_query("replace into recentVisit (login) values (\"' . $user . '\")");

Så burde du automagisk få en tabel med login-navne og hvornår de sidst loggede ind (hvis de har været det).
Avatar billede nielschristiansen Nybegynder
19. december 2003 - 09:40 #2
jeg kan se det virker fint men hvordan får jeg sorteret tidspunktet til noget læseligt ??
Avatar billede nielschristiansen Nybegynder
19. december 2003 - 09:40 #3
og selvfølgelig tak for hjælpen
Avatar billede mahler Nybegynder
19. december 2003 - 10:24 #4
Der bruger du DATE_FORMAT
http://www.mysql.com/doc/en/Date_and_time_functions.html

f.eks.
select date_format(senestSet, "%e/%m/%Y") as senestSet from recentVisit;
select date_format(senestSet, "%W %e %M klokken %k:%i") as senestSet from recentVisit;
Avatar billede nielschristiansen Nybegynder
19. december 2003 - 11:12 #5
som du sikkert har gættet er jeg ret nu til det her og jeg kan ikke ritigt se hvor jeg skal sætte select date_format(senestSet, "%e/%m/%Y") as senestSet from recentVisit; ind henne ?? :)
ved du tilfældigvis hvordan jeg får slettet en post i databasen når folk logger ud af min side har prøvet med den her
mysql_query("delete from rdnwo_dk.recentvisit where login = '$user'");};
men den virker ikke rigtigt tror det er fordi jeg ikke ved hvordan formen får kontakt med forespøgslen
Avatar billede nielschristiansen Nybegynder
19. december 2003 - 11:12 #6
skal lige siges at jeg har oprettet et spøgsmål med det under php
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester