Avatar billede codemanager Nybegynder
23. september 2004 - 23:08 Der er 7 kommentarer og
1 løsning

hvad skal jeg gøre

Hey

jeg er ved og lave et online system man er kommet i et lille problem

jeg skal havde overført hvad sider hedder til den side som ligger data ind i DB'en

jeg includer filen så jeg skal bruge nogt kode til og få noget med over tabel i DB'en hedder pagetitle

include("register_onlineusers.php");
Avatar billede jop... Nybegynder
23. september 2004 - 23:10 #1
Kan vi ikke lige få lidt kode?
Avatar billede codemanager Nybegynder
23. september 2004 - 23:11 #2
koden til og sætte ind

<?
aabn_forbindelse_og_vaelgdb();
// Variabler der skal bruges
// Vi starter med at finde IP adressen for brugeren
// Denne kode er testet på flere sites, og i øvrigt taget fra PHP’s online dokumentation
$IP = $_SERVER['REMOTE_ADDR'];

//Vi finder IPen hvis brugeren har brugt en ikke-anonym proxy server
$FIP = $_SERVER['HTTP_X_FORWARDED_FOR'];

//Vi checker så om det lykkedes. Gjorde det det erstatter vi den direkte fundne IP med den vi fandt igennem proxy'en
if (($FIP != "") && ($FIP != "unknown")) $IP = $FIP;
$IP = explode(",", $IP);
$IP = $IP[0];

// Vi bruger time() til at få et slags timestamp for lige nu
// Det er antallet af sekunder siden 1. januar 1970 (UNIX epoch)
$timenow = time();
// Vi sætter deletetime til 10 minutter før “lige nu” :)
$deletetime = $timenow-(600);
// Vi finder adressen på den nuværende side
$onlineurl = "http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];

// Vi får lige et rigtigt menneskeligt tidspunkt, til at smide i databasen
// Til det bruger vi date, med en parameter der fortæller hvilket format det skal være i
$tidnu = date("H:i:s");

// Selve opdateringen/indsætningen
// Vi låser tabellen. Dette sørger for at vi ikke får inkonsistente data,
// samt giver hurtigere opdaterings forespørgsler
@mysql_query("LOCK TABLES onlineusers WRITE") or exit;

// Vi sletter brugere der ikke har været online de sidste $deletetime
// dvs. 10 minutter (600 sekunder / 60)
$deletequery = mysql_query("delete from onlineusers where lastseen_stamp < '$deletetime'") or die (mysql_error());

// Vi tjekker, ud fra IP adressen, om brugeren allerede er i tabellen
$tjekquery = @mysql_query("select id from onlineusers where IP like '$IP'") or die (mysql_error());
if(mysql_num_rows($tjekquery) == 0) {
    // Brugeren var der ikke, vi indsætter “ham” lige
    $query = mysql_query("insert into onlineusers (ip, lastseen_stamp, pageurl, pagetitle, lastseen) values ('$IP','$timenow', '$onlineurl','$pagetitle','$tidnu')")or die (mysql_error());
    } else {
    // Brugeren var der skam allerede, så vi opdaterer “hans” tid data
// samt sideadresse, titel
    $query = mysql_query("update onlineusers set lastseen_stamp='$timenow', pageurl='$onlineurl', pagetitle='$title', lastseen='$tidnu' WHERE IP like '$IP'")or die (mysql_error());
}
// Vi låser tabellen op igen
@mysql_query("UNLOCK TABLES") or exit;
luk_forbindelse();
?>

koden til og vise

<?
include("connect.php");
include("register_onlineusers.php");
aabn_forbindelse_og_vaelgdb();
$getcount = mysql_query("select COUNT(id) from onlineusers");
echo "Der er lige nu ".mysql_result($getcount, 0, 0)." personer online.<br><br>";

$getusers = mysql_query("select IP, pageurl, lastseen, pagetitle from onlineusers order by lastseen desc");
while($r = mysql_fetch_array($getusers)) {
    $ip = $r["IP"];
    $side = $r["pageurl"];
    $tid = $r["lastseen"];
    $titel = $r["pagetitle"];
    echo "$ip var på <a href=\"$side\">$title</a> kl. $tid<br>";
}
luk_forbindelse();
?>
Avatar billede jop... Nybegynder
23. september 2004 - 23:14 #3
Har du defineret en pagetitle på alle dine sider?
Avatar billede codemanager Nybegynder
23. september 2004 - 23:22 #4
nej men dt jeg godt ville eer at lave noget i denne stil

$pagetitle = "online bruger";
include("register_onlineusers.php");

og så at den overfør det på en eller anden måde
Avatar billede codemanager Nybegynder
23. september 2004 - 23:27 #5
eller det vil jo sige jo da koden kommer på alle sider
Avatar billede codemanager Nybegynder
24. september 2004 - 16:33 #6
nogle der kan hjælpe
Avatar billede codemanager Nybegynder
27. september 2004 - 17:50 #7
ingen der kan hjælpe
Avatar billede codemanager Nybegynder
27. september 2004 - 19:10 #8
lukker
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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