Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 13-01-2004, 20:51   #1 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
Chat: ermiteln wie viel online sind ..

wie kann ich machen das es in einem chat immer anzeigt wie viele users online sind ??
wie viel das kommen das könnte ich noch und wenn sie sich immer über logout auslogen würden könnte ich es auch aber das machen ja die meisten nicht also weiss jemand wie ich herausfinden kann wenn jemand aus der seite geht oder weiss sonst wie man das macht mit dne online users

Danke schon mal

PS.
habe in der suche schon gesucht aber nichts brauchbares gefunden. :-)
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Alt 13-01-2004, 21:44   #2 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
per php wird (glaub ich) iimer ne session gestartet (wenn du php verwendest) sobald der user auf deine seite kommt und beendet wenn er sie wider verlässt (egal ob mit oder ohne logout)

ansonsten würd ich einfach ne abfrage machen ob der user schon ne weile nichts geschrieben hat und dann user_anzahl -= 1 oder so (ist halt nicht so korrekt)

mfg geo

[edith]

hab das beim googlen gefunden:

http://www.phpforum.de/archiv_5854_O..._anzeigen.html

1.
in etws so:
1. User eindeutige ID zuweisen
2. Bei jedem Seitenaufruf schauen, ob ID schon in Datenban vorhanden ist
- wenn NICHT, ID und Timestamp in Datenbank schreiben
- wenn JA, Timestamp von dazugehöriger ID ändern
3. Bei jedem Aufruf der Seite alle Einträge in der Datenbank, die älter sind als z.B. 2 Minuten löschen.

So, das wars in etwa

Gruß

Fritz the Cat



2.
hier ein beispiel...1. datei...nennst du whoisonline.php
<?php
include('wioconfig.php');

$inhalt=file($dbfile);
$count='1';
for($i='0'; $inhalt[$i]; $i++)
{
$details=explode('|', $inhalt[$i]);
if($details[0] >= time()-$time && $details[1]!=getenv('REMOTE_ADDR'))
{
$details[2]=trim($details[2]);
$count++;
if(!$anzahl[$details[2]]) $anzahl[$details[2]]='0';
$anzahl[$details[2]]++;
$write.=$inhalt[$i];
}
}
if(!$anzahl[$site])$anzahl[$site]='0';
$anzahl[$site]++;
$write.=time().'|'.getenv('REMOTE_ADDR').'|'.$site ."\n";
$datei=fopen($dbfile, 'w');
fputs($datei, $write);
fclose($datei);
echo "document.write(\"$count Benutzer online:<br>";
foreach($anzahl as $var)
{
echo "davon $var @ <strong>".key($anzahl)."</strong><br>";
next($anzahl);
}
if($display_copyright=='1') echo '<font size=\"1\"><a href=\"http://www.blabla.de\"; target=\"_blank\">Powerd by blabla</a></font><br>';
echo '");';
?>

2.datei, nennst du wioconfig.php'

<?php
$dbfile = "base.dat"; //Date in der die Eintraege gespeichert werden
$time = "120"; //Zeit wie lange Benutzer nach dem letzten Seitenaufruf noch als online gelten (in Sekunden)
$display_copyright = "0"; //Bei 1 wird der Copyrighthinweis "Powerd by blabla" als link angezeigt, ansonsten nicht...
?>

[edith]
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker

Geändert von _geo_ (13-01-2004 um 21:57 Uhr)
_geo_ ist offline   Mit Zitat antworten
Alt 14-01-2004, 11:51   #3 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
Braucht es dringend eine Datenbank oder gehts das auch über textdateien ??
kenn mich eben nicht so aus on php .. :-(

gruss t.online
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Alt 14-01-2004, 17:28   #4 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
$dbfile = "base.dat";

das is eh keine datenbank dabei kannst auch base.txt nennen
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 14-01-2004, 19:04   #5 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
Aber muss das so lang sein oder geht das auch kürzer ??
Kapiere den code nicht wirklich
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Alt 14-01-2004, 19:08   #6 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
jaja...an der stelle hab ich damals aufgehört...
warrantmaster ist offline   Mit Zitat antworten
Alt 14-01-2004, 19:36   #7 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
bin auch kein php profi ;-) :

ActionScript:
  1. <?php
  2. $dbfile = "base.dat"; //deteiname wird festgelegt
  3. $time = "120"; //Zeit wie lange Benutzer nach dem letzten Seitenaufruf noch als online gelten (in Sekunden)
  4.  
  5. $inhalt=file($dbfile); // datei wird eingeladen (jedes zeile als ein element d. arrays)
  6. $count='1';
  7. for($i='0'; $inhalt[$i]; $i++) // for schleife i.....zeilen index
  8. {
  9. $details=explode('|', $inhalt[$i]); // jede zeile wird nochmal gespalten in ein array (das enthält jetzt IP und timestamp d. users)
  10. if($details[0] >= time()-$time && $details[1]!=getenv('REMOTE_ADDR')) // wenn user noch nicht vorhanden und der timestamp >= der "absenz dauer"
  11. {
  12. $details[2]=trim($details[2]); //trim() entfernt überflüssige zeichen (beim auslesen mit file wird \n auch mit gelesen und das wird jetzt entfernt)
  13. $count++;
  14. if(!$anzahl[$details[2]]) $anzahl[$details[2]]='0'; // wenn anzahl[details[2]] noch nicht gesetz dann auf 0 setzen
  15. $anzahl[$details[2]]++;
  16. $write.=$inhalt[$i];
  17. }
  18. }
  19. if(!$anzahl[$site])$anzahl[$site]='0';// wenn noch keiner online ist dann auf 0
  20. $anzahl[$site]++; //und +1 weil wenn die php aufgerufen wird dann ist ja jemand da ;-)
  21. $write.=time().'|'.getenv('REMOTE_ADDR').'|'.$site."\n"; // die vars für die txt werden zusammengefasst
  22. $datei=fopen($dbfile, 'w');
  23. fputs($datei, $write);// und geschreiben
  24. fclose($datei);
  25. echo "document.write(\"$count Benutzer online:<br>"; // anzeigen der online user
  26. ?>
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 14-01-2004, 19:56   #8 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
@geo

naja, so unprofessionell sieht das ja nun wieder nicht aus

hast du das mal getestet ?
warrantmaster ist offline   Mit Zitat antworten
Alt 14-01-2004, 20:12   #9 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
nein, aber wenns vom www.phpforum.de kommt (nen admin !) dann kann man der Sache trauen ( oder )

Ich hab nur dokumentiert und gekürzt.
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 14-01-2004, 20:24   #10 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
Danke viel mal weiss noch nicht ob ich das schaffe aber werd es mal versuchen ..
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Alt 14-01-2004, 20:44   #11 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
so habe es jetzt so weit geschaft das es mir in der php-datei anzeigt wie viele online sind,
weiss jetzt aber nicht wie ich das in flash ein bauen sol ..

einfach die datei count ind eine textdatei speichern und dan aus dieser ausläsen ??

oder kan ich mir den wert gerade zurück gebe lassen ohne den wege über eine textdatei ?? sollte doch gehen oder ...

danke schon mal .. denn ihr wiesst ja immer etwas :-D
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Alt 14-01-2004, 21:27   #12 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
einfach die letzte Zeile der php ändern und mit
_level0.loadVariables("deinephp.php?" add random(9999));

oder

vari = new LoadVars();
vari.onLoad = function(success){
if(success){
_root.deintextfeldname = useronline;
}
}
vari.load("deinephp.php?" add random(9999));

laden

php:
echo "&useronline=".$count."&";

die var ist dann als _level0.useronline verfügbar (kannst statt _level0 auch _root oder this schreiben, je nachdem)

mfg geo
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker

Geändert von _geo_ (14-01-2004 um 21:33 Uhr)
_geo_ ist offline   Mit Zitat antworten
Alt 15-01-2004, 10:25   #13 (permalink)
*why ... ??
 
Benutzerbild von ichagx03
 
Registriert seit: Aug 2003
Beiträge: 451
Sieht viel versprechend aus werde es mal versuchen wen ich zeit habe ..

Danke noch mal's ihr seit wirklich genies
__________________
grues tb
-----------------------------
--> ich bin nicht du, denn du bist nicht ich
-----------------------------
--> keine gahrantie für die richtiege Rechtschribunhg.
-----------------------------
.:: Schau da !!
ichagx03 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele