anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Di 10 Jun, 2025 20:55

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Badnav verstehen
BeitragVerfasst: So 01 Apr, 2007 09:38 
Offline
Profi
Profi
Benutzeravatar

Registriert: So 01 Apr, 2007 09:31
Beiträge: 155
Hallo!

Ich hab nix dazu gefunden, bittetötetmichnicht wenns doch schon eines gibt!

Kann mir einer von euch schlauen Köpfen mal genau erklären wie ein Badnav genau entsteht?

- offenbar ists ein Fehler im Code, aber wie sieht der aus?

- und warum bekommt man einen Badnav wenn man zu schnell klickt?

Eine kurze Erläuterung wie das mit den Navs genau vor sich geht würde vl. Licht auf die Sache werfen. Ich hatte im letzten Testmonat 1200 Badnavs bei nichtmal 30 Testern und die Badnavs treten überall auf.

Bitte bitte erklärt mir wie die Navs funktionieren damit ich meinen Code in den Griff kriege.

Liebe Grüße,

Song Sinen

_________________
I <3 Eliwood
_______________
$a=b;
$b=a;
$$a=a;
_______________
Faust: Was ist mit diesem Rätselwort gemeint?
- Faust I, Z. 1337


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So 01 Apr, 2007 09:49 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Die Badnav (Kaputte Navigation), ensteht eig. Hauptsächlich (bzw. zum größtenteil) durch schnelles Klicken, bei Formularen wo keine Navigation vorhanden ist, versuchen die URL zu manipulieren (innerhalb des Spiels) oder auch ggf. Fehler im Script.

Es kommt deshalb eine badnav beim Schnellen klicken, weil es in LotGD einen Art Cheatschutz für die Navigation bzw. das Aufrufen von Navigationen gibt. Da ja LotGD auf Serverseitiges aufgebaut ist, wird natürlich erst beim nächsten neu Laden der Seite die Änderung ausgegeben/eine neue gemacht.

Bei Formularen ist das eig. ne ganz Lustige sache, denn wenn du ein Formular erstellst, musst du auch eine Leere Navigation dazu erstellen, um somit eine badnav zu vermeiden. Ansonsten wirst du nämlich sofort dort hingeleitet.


Btw.:
Kannst du vllt. erläutern wo die Fehler genau auftreten? Dann könnte man in etwa sagen wo genau der Fehler ist. Bzw., diesen näher kommen, um sie zu beheben.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 02 Apr, 2007 00:50 
Offline
Profi
Profi
Benutzeravatar

Registriert: So 01 Apr, 2007 09:31
Beiträge: 155
Hm, interesannt...

Ich hab mal mit den Tester gesprochen, keiner hat an der Url rumgespielt oder etwas ähnliches gehabt. Auch treten die Badnavs bei keinem bestimmten Skript auf (jedenfalls nicht auffällig). Sprich: Entweder mach ich generell etwas falsch oder die hohe Zahl der Navs kommt vom schnellen klicken.

Ich lehne mich jetzt mal ganz weit aus dem Fenster, aber...
Wenn man das gesammte LoGD in einen ilayer stecken würde mit 100% heigh und width so dass es nicht auffällt... Soweit ich mich entsinne würden die Links / Navs erst aktiviert wenn der Layer-Inhalt ausgeladen ist und das würde wiederum den Badnav durch schnelles Klicken verhindern.

Könnte das klappen? Und wie müsste ich hierfür die Templates ändern?
(Bin mit css leider nicht sehr bewandert sonst hätt ichs schon getestet.)

Liebe Grüße,

Song Sinen

_________________
I <3 Eliwood
_______________
$a=b;
$b=a;
$$a=a;
_______________
Faust: Was ist mit diesem Rätselwort gemeint?
- Faust I, Z. 1337


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 02 Apr, 2007 01:23 
Offline
Freak
Freak

Registriert: So 30 Okt, 2005 17:48
Beiträge: 1408
Wohnort: PB
Geschlecht: Männlich
LoGD: http://dav.blood-reaver.de/lotgd/
Warte am besten einfach, bs Kevz seine AJAX-Version fertig hat, die dürfte das problem lösen.

Was deine Idee anbelangt, hab ich da doch eher meine Zweifel, das das helfen mag.

_________________
Mehr oder minder inaktiv


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 02 Apr, 2007 10:29 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Danke, Auric.
Kaputte Navigationen (badnavs), sind eig. normal. Sie treten je nach Fehlerhervorrufen auf, dass ist natürlich in der hinsicht ganz normal. Aber eine derartige große anzahl von badnavs ist doch etwas merkwürdig. Zudem du ja auch eine nicht gerade sehr große zahl hast an Mitspielern wie du bereits geschrieben hattes.

Wenn die badnavs nur an bestimmten Orten aufreten bzw. Scripten, könntest du es vllt. mit einem Countdown hervorheben. So das man das ganze vllt. verringern kann, aber ansonsten musst du deine User irgendwie dazu zwingen langsamer zu klicken. *lach*

Zu der AJAX- Navigation, ich habe es bei mir so gemacht. Das an bestimmten stellen die Navigation dynamisch nachgeladen wird. Dies ist natürlich besonders von vorteil, wenn gerade badnavs bei schnellen Klicks an gewissen stellen entstehen. Aber man muss dazu auch beachten, dass AJAX natürlich auf JavaScript basiert...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 02 Apr, 2007 10:44 
Offline
Freak
Freak
Benutzeravatar

Registriert: Mi 06 Jul, 2005 19:10
Beiträge: 543
Wohnort: Bremen
Geschlecht: Männlich
LoGD: http://my-logd.com/motwd
Also ich persönlich habe kaum noch Badnavs.
Wenn der Code halbwegs sauber ist, vor allem im Wald (Specials), wird auch kaum Probleme haben.

Das einzigste was noch immer ab und an vorkommt ist, bei Scripts wo eine grosse Datenmenge aus der DB geladen wird. list.php (>100 Spieler), bio.php (lange Biografien). Dort aber auch nur, wenn die Spielinterne Navi nicht genutzt wird, sondern die Vor-Zurüclbuttons des Browsers, oder "Aktualisieren/F5".

Was Javascript / Ajax angeht, ist dies zwar eine feine Sache, aber ich habe bei gute 10% die kein Javascript zulassen. Daher bin ich generell geizig mit den Funktionen die man leicht über JS realisieren könnte. Formalurabfragen etc...

_________________
Das schwarze Schaf der LotGD-Community, 2. platzierter, beim Giga.de Homepage-Award 2007 und 1. platzierter beim German Web Award 2008.
PC-ACTION meint: "Sehr gut" für MotWD!
Mind of the White Dragon => http://my-logd.com/motwd


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 02 Apr, 2007 10:58 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Das stimmt, aber es ist ja auch nicht Falsch in der hinsicht. Füge kleine dinge lohnt es sich wirklich einfach nur JS pur zu nehmen. Aber sei es denn, um eine Showform- Funktion zu imitieren, lohnt es sich auf jeden fall AJAX doch zu nutzen, wenn man es einfach wenig schöner haben möchte und nicht bedingt auf neu laden der Seite besteht.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 03 Apr, 2007 10:52 
Offline
Profi
Profi
Benutzeravatar

Registriert: So 01 Apr, 2007 09:31
Beiträge: 155
In JS muss ich mich wohl auch mal einarbeiten. 8)

Das mit dem Countdown klingt interesannt, gibt es dafür bereits eine Funktion oder ist es noch die blose Idee?

Ich hab das mit den ilayer versucht doch offenbar klappt es nicht wie bei herkömmlichen Links.

Liebe Grüße,

Song Sinen

_________________
I <3 Eliwood
_______________
$a=b;
$b=a;
$$a=a;
_______________
Faust: Was ist mit diesem Rätselwort gemeint?
- Faust I, Z. 1337


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 03 Apr, 2007 10:57 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Es war nur ne blose Idee, aber das umsetzen sollte nicht sonderlich schwer sein. Je nachdem in welcher Sprache du es schreiben möchtest. Aber in PHP würde sich das wohl ehr lohnen, als unnötig in JavaScript zu schreiben.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 03 Apr, 2007 17:54 
Offline
Freak
Freak
Benutzeravatar

Registriert: Mi 06 Jul, 2005 19:10
Beiträge: 543
Wohnort: Bremen
Geschlecht: Männlich
LoGD: http://my-logd.com/motwd
In PHP kannst du aber keinen Countdown schreiben. Es sei denn du trägst eine fixe Zeit in ein DB-Feld, und bietest dem Spieler einen "Aktualisierbutton", welches dann die aktuelle, mit der angegebenen Zeit vergleicht. Dies aber den gegenteiligen Effekt bringen. Zu mal die ich mir die Serverlast bei 20 Spielern nicht vorstellen möchte.

_________________
Das schwarze Schaf der LotGD-Community, 2. platzierter, beim Giga.de Homepage-Award 2007 und 1. platzierter beim German Web Award 2008.
PC-ACTION meint: "Sehr gut" für MotWD!
Mind of the White Dragon => http://my-logd.com/motwd


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 03 Apr, 2007 18:15 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Beim Countdown schreiben in PHP, geht man davon aus, dass der jenige dies vorher irgendwo festlegt. Das sollte aber letztendlich klar gewesen sein ;) Aber wenn man JavaScript deaktiviert hat, bringt sogar der Countdown in JS letztendlich nichts. ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 16 Mai, 2007 20:50 
Offline
Profi
Profi
Benutzeravatar

Registriert: So 01 Apr, 2007 09:31
Beiträge: 155
Die Badnavs sind mitlerweile weniger geworden (hatte ein paar Unsauberkeiten in Funktionen, diese sind nun begoben) doch das Schnell-Klicken verursacht immer noch Probleme.

Einer meiner User brachte mich auf dieses kleine Skript:

$this->bbcode_second_pass_code('', ' <script type="text/javascript" language="JavaScript">
var count = <? echo (10-$timediff); ?>;
counter();
function counter () {
if(count == 0) {
document.getElementById("ok_button").value = "Weiter!";
document.getElementById("ok_button").disabled = false;
}
else {
document.getElementById("ok_button").value = "Weiter! (noch "+count+" Sekunden)";
document.getElementById("ok_button").disabled = true;
count--;
setTimeout("counter()",1000);
}
}
</script>')

Eigentlich dient es dazu bei voller Serverauslastung die User am F5-Spam zu hindern, doch wäre es nicht möglich soetwas in die addnav-function zu integrieren?

Leider sind meine Kenntnisse, vorallem mir js, begrenzt, eine Lösung dieses Problems würde mich sehr erfreuen!

Liebe Grüße,

Song Sinen

_________________
I <3 Eliwood
_______________
$a=b;
$b=a;
$$a=a;
_______________
Faust: Was ist mit diesem Rätselwort gemeint?
- Faust I, Z. 1337


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 30 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum