Foren-Übersicht TippEM - Das EM Tippspiel Bugfixes Tippgruppenauswertung fehlerhaft...?!?

Tippgruppenauswertung fehlerhaft...?!?

Hier findest du Bugfixes zur Fehlerbehebung.

Moderator: Moderatoren


marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Mir ist bei der Tippgruppenauswertung aufgefallen das die Sortierung in der Tabelle nicht funktionierte:

Die Durchschnittspunkte von drei Tippgruppen (4.10, 3.93 und 3.46) wurden folgendermaßen sortiert.

4.10
3.46
3.93

Das entspricht der Reihenfolge der Tippgruppen in der Datenbank!

In der Datei content/rangliste.dep.php habe ich mir das mal angeschaut. Soweit ich das sehe wurde komplett vergessen das Array nach der Datenbankabfrage zu sortieren. Es sind zwei Funktionen für die Sortierung vorhanden aber nur eine wird verwendet.

Die folgende Überprüfung:
if(!is_array)
usort($deprl,sort_deprl);


hab ich durch folgendes ersetzt:
if(!is_array)
{
usort($deprl,sort_deprl);
}
else
{
usort($deprl,sort_de);
}


Jetzt funktioniert die Sortierung wie erwartet.

Frage an die Entwickler: Ist das so ok oder habe ich einen Denkfehler gemacht?


Viele Grüße!

Kalle Benutzeravatar
Administrator

Beiträge: 3266
Wohnort: Ibbenbüren

Nein, da hast du keinen Denkfehler drin. Wird mit dem ersten Ergebnisupdate korrigiert heute.

Danke für den Hinweis
Werde Fan von tippspiel4free.de auf Facebook

Probleme mit deinem Tippspiel ?
HIER findest du bestimmt die Lösung ...

marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Hi!

Darf ich fragen wo der Denkfehler liegt und muss ich auf die Lösung heute Abend warten :)

Muss ja zugeben das sich mir der Sinn der usort callback-Funktion sort_deprl nicht ganz offenbart hat. Da die sort_de aber sinnvoll aussah habe ich die einfach in den else Zweig gepackt :)


Viele Grüße,
Marco

marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Ups, stimmt...
Wer lesen kann ist klar im Vorteil :-)


Gruß,
Marco

marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Jetzt ja :)

Verstehe nicht ganz was Du meinst...
Diese Art der Rangliste gibt es doch bereits...

Hilf mir auf die Sprünge :)

marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Ja, jetzt hab ich es verstanden :)

Da es recht interesant klang soetwas zu haben,
hab ich das mal bei mir eingebaut :-)

Hätte man bestimmt eleganter machen können aber alles andere war mir gerade zuviel Arbeit :)

Bei mir ist es jetzt so abgeändert das man unterhalb der Rangliste der Tippgruppen nochmal für jede Tippgruppe die Übersichtstabelle erhält.

Um das zu realisieren waren nur ein paar kleinere Änderungen in folgenden Dateien notwendig:

[green]content/rangliste.kompakt.php [/green]:
Zeile
returnRanglisteKompakt("boni",($RUNTIME['PATH'][3]-1)*$CONFIG['RANGLISTE']['UPP'],10,1);

wird zu:
returnRanglisteKompakt("boni","",($RUNTIME['PATH'][3]-1)*$CONFIG['RANGLISTE']['UPP'],10,1);


[green]include/inc.functions.php[/green]

In Funktion returnRanglisteKompakt()

Abschnitt:

function returnRanglisteKompakt($type) {
global $RUNTIME, $CONFIG, $_SESSION;


wird zu:

function returnRanglisteKompakt($type,$dep) {
global $RUNTIME, $CONFIG, $_SESSION;

if ($dep != "")
{
echo "

Tippgruppe: " . $dep . "

";
}


und Abschnitt:

$sql = mysql_query("SELECT * FROM rangliste_".$type." ORDER BY platz ASC");


wird zu:

$sql = "";
if ($dep == "")
{
$sql = mysql_query("SELECT * FROM rangliste_".$type." ORDER BY platz ASC");
}
else
{
$sql = mysql_query("SELECT platz,rang,uid,tipps,e,d,t,b,pkt,lsp,ast,lst FROM rangliste_".$type.",users WHERE ((users.id=rangliste_boni.uid) AND (users.department='".$dep."')) ORDER BY platz ASC");
}



[green]content/rangliste.dep.php[/green]

Am Ende der Datei folgendes einfügen:


if ($deprl > 1)
foreach ($deprl as $platz => $row)
{
returnRanglisteKompakt("boni",$row['department'],($RUNTIME['PATH'][3]-1)*$CONFIG['RANGLISTE']['UPP'],10,1);
}

returnRanglisteKompakt("boni","privat",($RUNTIME['PATH'][3]-1)*$CONFIG['RANGLISTE']['UPP'],10,1);
?>



Ich hoffe ich habe nichts vergessen und übernehme natürlich keine Haftung für irgendwelchen kaputten Tippspiele :)

Nachteil der oben angegebenen "Lösung" ist das weiterhin die Platzierung der Gesamtübersicht angezeigt wird. Mich persönlich stört das aber nicht weiter.

Falls das irgendwann in die offizielle Version aufgenommen werden sollte könnte man bestimmt noch an einigen Stellen optimieren.


Viele Grüße,
Marco

Kalle Benutzeravatar
Administrator

Beiträge: 3266
Wohnort: Ibbenbüren

Ich hoffe ich habe nichts vergessen und übernehme natürlich keine Haftung für irgendwelchen kaputten Tippspiele


Wir natürlich auch nicht, da es sich hier um eine "Usererweiterung" handelt, und die Änderungen von uns nicht freigegeben wurden.

Also, alles auf eigene Verantwortung!!!!

[red]Und nochmal der Hinweis das es KEIN Bugfix ist [/red]
Zuletzt geändert von Kalle am 08.06.2008, 14:30, insgesamt 1-mal geändert.
Werde Fan von tippspiel4free.de auf Facebook

Probleme mit deinem Tippspiel ?
HIER findest du bestimmt die Lösung ...

CKz23 Grünschnabel

Beiträge: 24
an marco.

also ich habe das jetzt alles so eingefügt wie du es beschrieben hast.

aber wenn ich jetzt auf tippgruppen gehe:

Parse error: syntax error, unexpected T_STRING in /var/www/web63/html/content/rangliste.dep.php on line 158


in zeile 158 steht:

returnRanglisteKompakt("boni","privat",($RUNTIME['PATH'][3]-1)*$CONF IG['RANGLISTE']['UPP'],10,1);


woran liegt es jetzt noch??

marco Benutzeravatar
Grünschnabel

Beiträge: 33
Wohnort: Germany
Sorry das ich mich so spät melde aber ich habe Dein Posting gerade erst gelesen.

Hast Du nach Deinen Änderungen noch ein Ergebnisupdate gemacht? Es könnte evtl. sein das Teile der Änderung überschrieben wurden.

Ansonsten könnte ich Dir gern ein Archiv mit den geänderten Dateien schicken welches bei leunam funktioniert hat ->PN.


Viele Grüße,
Marco

CKz23 Grünschnabel

Beiträge: 24
ja über die dateien per pn würde ich mich sehr freuen.

Nächste

Zurück zu Bugfixes

cron