anpera.net
https://anpera.dyndns.org/phpbb3/

Online Status
https://anpera.dyndns.org/phpbb3/viewtopic.php?f=34&t=878
Seite 1 von 1

Autor:  Scartha [ Mo 17 Jan, 2005 03:24 ]
Betreff des Beitrags:  Online Status

Ich wollte des einbauen, dass man sieht wer wo grad online ist, also z.B. wer grad aufm Dorfplatz ist...

Zitat:
function infobuddy($locate){
global $session;

$useronline=appoencode(templatereplace("statstart")
.templatereplace("stathead",array("title"=>"Hier online:")),true);

// Routine um Anwesende festzustellen
$buddy="<table border=0 width='152'><tr><td></td><td></td><td><b>`6Hier online:`0</b>";
if ($locate == 2) {
$cityid = $session[user][game_city];
$sql = "SELECT name,login,sex FROM accounts
WHERE game_position = ".$locate."
AND locked = 0
AND loggedin = 1
AND game_city = $cityid
AND laston>'".date("Y-m-d H:i:s",strtotime("-".getsetting("LOGINTIMEOUT",900)." seconds"))."'
";
} else {
$sql = "SELECT name,login,sex FROM accounts
WHERE game_position = ".$locate."
AND locked = 0
AND loggedin = 1
AND laston>'".date("Y-m-d H:i:s",strtotime("-".getsetting("LOGINTIMEOUT",900)." seconds"))."'
";
}
$result=db_query($sql);
$anzrows = db_num_rows($result);
if ($anzrows==0){
$buddy.="<br><i>`&Niemand</i></td></tr></table>";
}else{
$buddy.="</td></tr>";
for($i=1;$i<=$anzrows;$i++){
$row=db_fetch_assoc($result);
if ($row[sex] == "1") {
$headpic = "images/uo_female.gif";
} else {
$headpic = "images/uo_male.gif";
}
$buddy.="<tr><td><a href=\"mail.php?op=write&to=".rawurlencode($row['login'])."\"
target=\"_blank\"
onClick=\"".popup("mail.php?op=write&to=".rawurlencode($row['login'])."").";
return false;\">
<img src='images/newscroll.GIF' width='16' height='16' alt='Mail schreiben' border='0'>
</a></td>";
$buddy.="<td><a href=\"bio.php?char=".rawurlencode($row['login'])."&ret=".URLEncode($_SERVER['REQUEST_URI'])."\">
<img src='" . $headpic . "' alt='" . $row[sex] . "' width='16' height='16' alt='Bio lesen' border='0'>
</a>`0</td><td>".$row[name]."</td></tr>";
addnav("","bio.php?char=".rawurlencode($row['login'])."&ret=".URLEncode($_SERVER['REQUEST_URI'])."");
}
$buddy.="</table>";
}
#$buddy=framestat($buddy); //Rahmen setzen
$buddy=appoencode($buddy,true);
return $buddy;
}

function getgamemonth(){

$m = date("n",gametime());
if ($m == 1) {
#$m_name = "Januar";
$m_name = "Schneemond";
#$m_name = "Hartung";
} else if ($m == 2) {
#$m_name = "Februar";
$m_name = "Hornig";
#$m_name = "Hornung";
} else if ($m == 3) {
#$m_name = "März";
$m_name = "Lenting";
#$m_name = "Lenzinmanoth";
} else if ($m == 4) {
#$m_name = "April";
$m_name = "Ostara";
#$m_name = "Ostarmanoth";
} else if ($m == 5) {
#$m_name = "Mai";
$m_name = "Wonnemond";
#$m_name = "Wunnimanoth";
} else if ($m == 6) {
#$m_name = "Juni";
$m_name = "Brache";
#$m_name = "Brachmanoth";
} else if ($m == 7) {
#$m_name = "Juli";
$m_name = "Heumond";
#$m_name = "Hewimanoth";
} else if ($m == 8) {
#$m_name = "August";
$m_name = "Erntemond";
#$m_name = "Aranmanoth";
} else if ($m == 9) {
#$m_name = "September";
$m_name = "Laubabwurf";
#$m_name = "Witumanoth";
} else if ($m == 10) {
#$m_name = "Oktober";
$m_name = "Jagdmond";
#$m_name = "Gilbhard";
} else if ($m == 11) {
#$m_name = "November";
$m_name = "Nebelmond";
#$m_name = "Herbistmanoth";
} else if ($m == 12) {
#$m_name = "Dezember";
$m_name = "Wolfsmond";
#$m_name = "Heilagmanoth";
}

return $m_name;
}

function getgameyearname(){

$y = getgameyear();
$y = substr(base_convert($y,10,4), -1);

if ($y == 1) {
$y_name = "des Windes";
} else if ($m == 2) {
$y_name = "des Wassers";
} else if ($m == 3) {
$y_name = "der Erde";
} else if ($m == 4) {
$y_name = "des Feuers";
}
return $y_name;
}

function grafbar($full,$left,$width=70,$height=5) {
$col2="#000000";
if ($left<=0){
$col="#000000";
}else if ($left<$full/4){
$col="#FF0000";
}else if ($left<$full/2){
$col="yellow";
}else if ($left>=$full){
$col="#00AA00";
$col2="#00AA00";
}else{
$col="#00FF00";
}
if($full==0) $full = 1;
$u = "<table cellspacing=\"0\" style=\"border: solid 1px #000000\" width=\"$width\" height=\"$height\"><tr><td width=\"" . ($left / $full * 100) . "%\" bgcolor=\"$col\"></td><td width=\"".(100-($left / $full * 100)) ."%\" bgcolor=\"$col2\"></td></tr></table>";
return($u);


etc....

aber des funktioniert nicht, also er zeigt mir nix an

Ele

Autor:  anpera [ Mo 17 Jan, 2005 06:40 ]
Betreff des Beitrags: 

In $buddy steht zwar (vermutlich) der komplette Ausgabestring drin und er wird auch von der Funktion zurückgeliefert, aber wo und wie wird die Funktion aufgerufen?

Am Anfang der Funktion wird eine Variable $useronline definiert, die aber nirgendwo mehr gebraucht wird und am Ende der Funktion ungenutzt verfällt. Die Zeile deutet aber darauf hin, dass das also in der Vitalinfo erscheinen soll.

Du müsstest die Funktion dazu in der function charstats in der common.php aufrufen, wo die Vitalinfo generiert wird. (Wo du die Funktion bisher aufrufst, hast du leider nicht geschrieben.)

Vielleicht irgendwie so?
[php]function charstats(){
...
$charstat.=appoencode(templatereplace("stathead",array("title"=>infobuddy($session['user']['game_position']))),true);
...
}[/php]



Bitte beachte, dass diese Funktion nicht mit ext GER 3 kompatibel ist! (Es existiert weder game_city noch game_position.) Ich hab sie daher nicht komplett auf Fehler durchgelesen, sondern nur versucht, nachzuvollziehen, wo die Fehler bei der Ausgabe sein könnten.

Autor:  Scartha [ Mo 17 Jan, 2005 13:29 ]
Betreff des Beitrags: 

Ja die benötigten Tabellen sind ja erstellt.... des nicht das thema

Autor:  anpera [ Mo 17 Jan, 2005 14:04 ]
Betreff des Beitrags: 

Die Tabellen allein genügen nicht. Die müssen auch mit dem richtigen Inhalt gefüllt werden. Der Funktionsaufbau legt nahe, dass in Städten game_position=2 gesetzt werden und an allen anderen Orten einen anderen Wert bekommen muss. Ich gehe einfach mal davon aus, dass du das alles überall richtig eingebaut hast, denn ext GER 3 macht das ja nicht von alleine. Sonst ist es klar, dass in der Datenbank niemand gefunden wird und so natürlich niemand angezeigt werden kann.

Trotzdem ergibt die Zeile, in der $useronline definiert wird, nach wie vor keinen Sinn und meine Frage, wie und wo die Funktion infobuddy() aufgerufen wird - wo also die Ausgabe stattfinden soll - hast du noch nicht beantwortet. :D

Autor:  Scartha [ Mo 17 Jan, 2005 14:16 ]
Betreff des Beitrags: 

angezeigt werden sollte es unter "Vital Info" und Ter Aktionen, bin grad am überlegen, ob ich das Template dafür nicht ändern muss...

Autor:  Kevz [ Mo 17 Jan, 2005 14:16 ]
Betreff des Beitrags: 

Hehe das kommt alles aus den Rabenthal scripten, guck mal genau rein, wo es mit gekuppelt ist, soweit ich weiß sind die mit den functions gekuppelt und es sind auch viele mehr...
ein paar db einträge sind es auch

Autor:  Scartha [ Mo 17 Jan, 2005 14:20 ]
Betreff des Beitrags: 

Kevz hat geschrieben:
Hehe das kommt alles aus den Rabenthal scripten, guck mal genau rein, wo es mit gekuppelt ist, soweit ich weiß sind die mit den functions gekuppelt und es sind auch viele mehr...
ein paar db einträge sind es auch




Ja ist aber verändert bei ihm wirds glaub ich oben angezeigt über der Vital info...

Autor:  Scartha [ Mo 17 Jan, 2005 14:50 ]
Betreff des Beitrags: 

Wie dem auch sei, ich geh noch mal paar Sachen durch und wenn ich den Fehler gefunden habe lass iches euch wissen, trotzdem Danke ;)

Autor:  bibir [ Di 18 Jan, 2005 12:41 ]
Betreff des Beitrags: 

warum immer weitere, neue felder?
restorepage hat doch die adresse..ist auch vieles mit moeglich!

das was ihr da macht ist tatsaehclich so, wie auf rabenthal

wenn ich mich recht entsinne hat bios die funktion mit restorepage..
dort ist es moeglich, in der kneipe nur beim 'chat' angezeigt zu werden, wenn mana uch wirklcih im chat ist und nicht gerade bei cedrick oder so rumhaengt

beim setzetn von location wuerde das ja staendig vergessen werden oder so..
ich faends wesentlich aufwendiger, als einfach auf restorepage zu schauen

Autor:  Scartha [ Do 20 Jan, 2005 00:02 ]
Betreff des Beitrags: 

Ok, habs hinbekommen, war nur des Template.

Danke ;)

Autor:  Vaan [ Sa 26 Feb, 2005 17:57 ]
Betreff des Beitrags: 

hi, kannst du nich mal diese änderungen für alle veröffentlichen (mit einbauanleitung usw) damit andere die möglichkeit haben das auch zu machen?
MfG Vaan

Autor:  Scartha [ Sa 26 Feb, 2005 18:11 ]
Betreff des Beitrags: 

Vaan hat geschrieben:
hi, kannst du nich mal diese änderungen für alle veröffentlichen (mit einbauanleitung usw) damit andere die möglichkeit haben das auch zu machen?
MfG Vaan



....Ich werd mal alles raussuchen, aber heute nimmer sry, muss noch schauen wie ich das am besten für euch mache, weil ich u.a. auch 2 common datein hab und der online Teil in beiden teilen drinne ist.
Aber das sollte nicht das hindernis sein.

Autor:  leenchen [ Fr 15 Apr, 2005 00:20 ]
Betreff des Beitrags: 

ich würde auch ganz gerne eine Online Anzeige bei mir einbauen aber ich kann hier nichts finden wo eine Erklärung gepostet wurde...

vielleicht bin ich auch blind aber über die suche finde ich nix falls doch irgendwo eine Anleitung gepostet ist bitte ich euch mir den Link dort hin mal zu geben :)

DANKE

Autor:  Devilzimti [ Fr 15 Apr, 2005 05:45 ]
Betreff des Beitrags: 

http://anpera.homeip.net/forum/viewtopi ... t=sql+prop

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/