Søger du en specifik kategori?

 



Oprettet fre. d. 06. marts 2009 kl. 03:16

inctor
inctor (8.611 point)
Guidens karaktér
1
2
3
4
5

Hvordan du kan se hvem der er online på din hjemmeside. (i php)

Min første artikel, men jeg kaster mig ud i at prøve og lave det fint, denne første artikel handler om hvordan i kan se hvem som er online på jeres side.
Tag forbehold for stavefejl eller lign.


Oprette Tabellen I Databasen.

Sæt den følgende kode ind i en MySQL Query .. Efter det er gjort, skulle du meget gerne have fået oprettet en tabel der hedder online med 2 felter i, brugernavn og online ..

CREATE TABLE `online` (
`brugernavn` VARCHAR( 20 ) NOT NULL ,
`online` TINYINT( 2 ) DEFAULT '0' NOT NULL
) COMMENT = 'Hvem Er Online';



Registrer Når En Logger Ind.

Til at registrere når en logger ind skal vi bruge
følgende kode for at det bliver registreret i databasen. Som Kaldes "online.php".
<?
@mysql_connect ("localhost" , "navn" , "kode");
@mysql_select_db ("Database");

$select_info = mysql_query("SELECT * FROM tabel WHERE(id='$id')");
$row_info = mysql_fetch_array($select_info);

$select_online = mysql_query("SELECT * FROM online WHERE brugernavn='$row_info[*rækken*]'") or die(mysql_error());
$row_onl = mysql_fetch_array($select_online);

if($row_onl[brugernavnnavn] == $row_info[*rækken*]) {
mysql_query("UPDATE online SET online = 1 WHERE(brugernavn='$row_info[*rækken*]')");
} else {
mysql_query("insert into online(brugernavn)values('$row_info[*rækken*]')");
mysql_query("UPDATE online SET online = 1 WHERE(brugernavn='$row_info[*rækken*]')");
}
?>
<body onunload=\"logout.php\">
</body>


Nu Vil Vi Se Hvem Som Er Online.

For at se hvem der er online skal der bruges en While. Som skal kaldes "onlinebrugere.php".

<?
@mysql_connect ("localhost" , "navn" , "kode");
@mysql_select_db ("Database");

$query = mysql_query("SELECT * FROM online WHERE online = '1'") or die(mysql_error());
while($hvem = mysql_fetch_assoc($query)){
echo "Brugernavn: $hvem[brugernavn]<br>";
}
else {
echo "Der er ingen Online."; }
?>


Nu Skal Det Registreres Når De Logger Ud.

Til det skal vi bruge en kode som opdatere online og sætter den til 0. Som skal kaldes "logout.php".

<?
@mysql_connect ("localhost" , "navn" , "kode");
@mysql_select_db ("Database");

$select_info = mysql_query("SELECT * FROM tabel WHERE(id='$id')");
$row_info = mysql_fetch_array($select_info);

$select_online = mysql_query("SELECT * FROM online WHERE brugernavn='$row_info[*rækken*]'") or die(mysql_error());
$row_onl = mysql_fetch_array($select_online);

mysql_query("UPDATE online SET online = 0 WHERE(brugernavn='$row_info[*rækken*]')");
?>


Indsæt følgende kode et sted på din side, ligemeget hvorhenne da kassen er usynlig.
<iframe name="I1" marginwidth="0" marginheight="0" height="0" width="0" scrolling="no" border="0" frameborder="0" src="online.php">
</iframe>

Det koden gør er at så snart den side bliver lukket så åbner den logout.php og man sættes til Offline ..

Håber Artiklen Kan Bruges Af Nogen Af Jer, Beklager Meget hvis det er for uoverskueligt. Men som sagt, min første artikel ..
Vh. IncToR

Rettet:
Sig Til hvis jeg har skrevet forkert eller hvis der er fejl så opret spm ud fra denne artikel så hjælper jeg gerne.
Svar På Spm, Den åbner automatisk Logout.php vinduet .. det gør den i <Body onunload=\"logout.php\"> den åbner en side kaldet logout.php så snart at siden med det body tag bliver lukket.


Kommentar Fra Mig Af... :
Duer jeg til at skrive artikler eller skal jeg stoppe med det ?

Skrevet søn. d. 08. januar 2006 kl. 23:22| #1

the_email (23.977 point)
Smart, det skal jeg have på min side :-) Godt gået

Skrevet man. d. 09. januar 2006 kl. 02:02| #2

jesperfjoelner (23.613 point)
Ser smart ud, men det bør nok nævnes i overskriften af det er til PHP.

Skrevet man. d. 09. januar 2006 kl. 09:48| #3

vallemanden (21.235 point)
hvad sker der hvis de bare lukker browseren ned, UDEN at trykke logud?

Skrevet man. d. 09. januar 2006 kl. 12:02| #4


Skrevet man. d. 09. januar 2006 kl. 19:44| #5

Jeg ville vælge at lave "online" om til et timestamp, der fortæller hvem der har reloadet siden indenfor de sidste X minutter, da denne metode er højst unøjagtig. (som vallemanden også påpeger)

Skrevet ons. d. 11. januar 2006 kl. 16:26| #6

kalp (243.433 point)
Fejl er blevet rettet og fin artikkel til dem som har brug for denne funktion.

Skrevet ons. d. 11. januar 2006 kl. 20:13| #7

challenge (8.815 point)
Det kan jo ikke gøres bedere!
Fedt at se!

Skrevet tor. d. 12. januar 2006 kl. 09:46| #8

fixxxer (20.376 point)
En ikke så detaljeret, men noget bedre fungerende artikel om samme:
http://www.eksperten.dk/ (...)

Skrevet fre. d. 13. januar 2006 kl. 12:43| #9

Ligesom vallemanden spørger om, hvad sker der hvis de bare lukke browseren uden at trykke på logud først, hvordan registerer du det?

Skrevet lør. d. 14. januar 2006 kl. 21:29| #10

yezbarh (12.755 point)
Kan faktisk godt gøres bedre. Brug en time(); og tjek om brugeren har opdateret det i databasen, fx. DELETE * FROM tabel WHERE tid = $tid - 4

Skrevet tir. d. 17. januar 2006 kl. 17:09| #11

gentoo2005 (11.225 point)
javascript !? komplet ubrugelig.. og grim kode :/ Det kan altså gøres bedre, om igen.

Skrevet lør. d. 08. april 2006 kl. 21:20| #12

nizo (14.930 point)
Hvad hvis folk ikke gider trykke log-ud hver gang og bare lukker browseren? Et rigtigt online system checker i tidsintervaler der bliver sat naar brugeren gaar fra side til side. Hvis tidsintervalet er overskredet, er brugeren logget ud.

Skrevet tir. d. 09. maj 2006 kl. 20:22| #13

nin807 (11.470 point)
Øhm nizo... Her skal ikke trykkes log-ud :S

Skriv en kommentar



Mest populære guides

Guidens karakter
!!!Karaktér: 3
12 stemmer
31/01 - 2011
Af: heinzdmx

Dropbox - gratis online lagerplads

Jeg vil i denne guide forklare lidt om hvad Dropbox er og også hvordan du får mest mulig plads på Dropbox. Dropbox er kort sagt en service hvor du har dine data lagt til backup på både nettet og din egen computer.
Guidens karakter
!!!Karaktér: 4
33 stemmer
02/02 - 2009
Af: jkrons

Dato- og tidsberegninger i Excel

En introduktion til simple beregninger med dato og tid i Excel. Opdateret med afsnit om beregning af tillæg.
Excel  |  Læs »
Guidens karakter
!!!Karaktér: 4
21 stemmer
06/11 - 2011
Af: fromsej

Sådan fjerner du virus og malware

Udviklingen går stærkt på "skidt"fronten, så vi har sammensat en ny og effektiv programpakke til fjernelse af det.
Virus  |  Læs »

Log ind

   

   

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Gør dig selv en tjeneste: Køb et ordentligt SD-kort

Der kan være meget stor hastighedsforskel på to umiddelbare ens SD-kort. Se her hvad du skal være opmærksom på, når du køber ekstra hukommelse til din mobil, tablet eller kamera.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Gratis flysimulator fra Microsoft

Den legendariske Flight Simulator fra Microsoft genopstår den 29. februar - og denne gang er spillet gratis.


Nyheder fra Computerworld

Teaser billede

Bank: Derfor er login uden NemID helt i orden

Der er ikke hold i påstanden om sikkerhedsproblemer i forbindelse med bankkunders login uden brug af NemID, lyder det fra Nykredit Bank.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger