Seite 15 von 16

Verfasst: Fr 08.Sep, 2006 10:48
von Bootenks
ja da speicher ich es auch als float ab da muss es klappen:

Code: Alles auswählen

  `cont_first_rate` float unsigned default NULL,
  `cont_second_rate` float unsigned default NULL,
  `cont_third_rate` float unsigned default NULL,
aber in der anderen Tabelle wird es als mediumint gespeichert... => das kann so nicht stimmen...

Verfasst: Fr 08.Sep, 2006 10:51
von TommyP
Welche denn? Wie heißt die?

Verfasst: Fr 08.Sep, 2006 10:58
von Bootenks
Diese:

Code: Alles auswählen

CREATE TABLE `phpbb_album_contest_ratings` (
  `cont_user_id` mediumint(5) unsigned NOT NULL default '0',
  `cont_username` varchar(32) default NULL,
  `cont_points` mediumint(4) unsigned NOT NULL default '0',
  `cont_number_first` tinyint(3) unsigned default '0',
  `cont_number_second` tinyint(3) unsigned default '0',
  `cont_number_third` tinyint(3) unsigned default '0',
  PRIMARY KEY  (`cont_user_id`)
);

Verfasst: Fr 08.Sep, 2006 11:03
von TommyP
Stimmt, dort sind keine Stellen nach dem Komma. Aber diese Tabelle ist doch für die "ständige" Bestenliste, nahm ich an.

Verfasst: Mo 11.Sep, 2006 09:18
von Bootenks
sorry.... hatte übers WE keine Zeit... ich versuche es sobald wie möglich... ~.~

Edit: Habe mir die Stelle mal angeschaut, in der es berechnet wird. Leider kann ich da kein Berechungsfehler finden. Ich versuche mich aber weiter am debuggen. *Das mit den Points hat nur indirekt was damit zu tun* => kann also ignoriert werden...

Hier mal mein Algorithmus:

mit:

Code: Alles auswählen

			$rpic = $rowl[$zcont]['pic_id'];

			$sql = "SELECT rate_pic_id, rate_point, rate_user_id
			FROM " . ALBUM_RATE_TABLE . "
			WHERE rate_pic_id = $rpic
			ORDER BY rate_pic_id DESC";

...

			$count_cont = 0;
			while ( $row = $db->sql_fetchrow($result) )
			{
				$con_rate[$zcont][0] = $row['rate_pic_id'];
				$con_rate[$zcont][1] += $row['rate_point'];
				$count_cont++;
			}
hole ich alle Bewertungen für das Bild raus.

Als nächstes bilde ich das arithmetische Mittel:

Code: Alles auswählen

$con_rate[$zcont][1] = (empty ($count_cont) ? 0 : ($con_rate[$zcont][1] / $count_cont));
Dieser Vorgang befindet sich in einer for Schleife, so dass dies für alle Bilder, die am Kontest teilgenommen haben, geschieht.

Letzten Endes sortiere ich mit:

Code: Alles auswählen

		for($zcont=0; $zcont < $cont_total_pics - 1; $zcont++)
		{
			for($jcont=0; $jcont < $cont_total_pics-$zcont-1; ++$jcont)
			{
				if($con_rate[$jcont][1] < $con_rate[$jcont+1][1])
				{
					$con_help[0] = $con_rate[$jcont][0];
					$con_help[1] = $con_rate[$jcont][1];
					$con_rate[$jcont][0] = $con_rate[$jcont+1][0];
					$con_rate[$jcont][1] = $con_rate[$jcont+1][1];
					$con_rate[$jcont+1][0] = $con_help[0];
					$con_rate[$jcont+1][1] = $con_help[1];
				}
			}
		}
dieses Array!! Dann brauch ich nur noch die ersten x Werte, welche ich angezeigt haben möchte. abgreifen und voila fertig. (Hier ist noch zu erwähnen, dass es alter Code von mir ist... Heute würde ich es ein wenig anders schreiben. Ich glaub php bietet fürs Sortieren ne Menge besserer und vor allem schnellere Funktionen an.)

Also ich seh den Fehler wirklich nicht...

Verfasst: Mo 11.Sep, 2006 11:22
von TommyP
Hi,
ui, ui. Für mich sind das böhmische Dörfer. Ich sehe letztlich nur das Ergebnis. Da sehe ich ganze Zahlen in der Auswertung aber zweistellig hinter dem Komma direkt beim Bild. Hatte mich ja auch nicht wahnsinnig gestört. Wäre da nicht das falsche Ergebniss. Somit wird Jemand platziert, der das nicht hätte sein sollen und kommt entsprechend sogar in die Gesamtwertung.
Meine Frage: warum wird ohne Nachkommastellen die Auswertung dargestellt? Kann es denn nicht daran liegen? Es müsste doch der Durchschnitt mit den gebrochenen Zahlen genommen werden.
Wieso wird eigentlich nochmal neu berechnet, wo doch bereits der Durchschnitt bei den Bildern steht?

Verfasst: Mo 11.Sep, 2006 11:29
von Bootenks
weil der Durchschnitt dort auch nur direkt berechnet wird ... der steht ja nirgendwo... *glaub ich zu mindest* [lang ist es her]

Warum es ganzzahlig ist weiss ich leider noch nicht... ich werd es aber noch genauer unter die Lupe nehmen müssen. D.H. local den Mod installieren... *rolleyes*

Verfasst: Mo 11.Sep, 2006 11:43
von TommyP
Wird die gleiche Berechnung für die Zahl verwendet, die im Album bei den Bildern steht? Oder ist das eine andere?

Verfasst: Mo 11.Sep, 2006 11:57
von Bootenks
genau das versuche ich gerade herauszufinden ;)

Verfasst: Mo 11.Sep, 2006 12:17
von TommyP
Dann drücke ich die Daumen, dass Du da fündig wirst ;)
Danke, dass Du Dich da nochmal reinkniest. Ich bin da völlig hilflos...

Verfasst: Mo 11.Sep, 2006 12:21
von Bootenks
Also ich hab mal nachgeschaut:

Es wird wie ich sagte immer neu berechnet! Nur nicht wie ich dachte im php, sondern in der Datenban mit AVG!! *ich werde mal schauen ob ich das einfach bei mir übernehmen kann*

Edit:

Versuch es mal mit dem Attachment.
So müsste er das selbige Prinzip nutzen, wie es in der album_cat.php angezeigt wird. Offen ist noch, dass nur ganze Zahlen angezeigt wurden... Das prüfe ich jetzt mal...

Verfasst: Mo 11.Sep, 2006 12:54
von TommyP
Danke erstmal, ich werde das heute abend testen, denn da muss ja ein Kontest zum testen angelegt werden.

Verfasst: Mo 11.Sep, 2006 13:39
von Bootenks
Das Ausgabeproblem liegt hier in der language/lang_english/lang_contest.php

an dieser Stelle:

Code: Alles auswählen

$lang['cont_rankings'] = 'Evaluation: <b>%d</b> Point(s)';
die müsste so lauten:

Code: Alles auswählen

$lang['cont_rankings'] = 'Evaluation: <b>%0.2f</b> Point(s)';

Verfasst: Mo 11.Sep, 2006 13:47
von TommyP
Na da soll man drauf kommen? :hh:
Und was wird da geändert, dass es funktioniert? Du bist bestimmt schon dran...

Verfasst: Di 12.Sep, 2006 17:20
von Bootenks
hast du es angepasst?? und funktioniert es?? wäre schön wenn ich einen RESPONSE bekommen könnte...

Verfasst: Do 14.Sep, 2006 01:33
von TommyP
Entschuldige, war ein paar Tage weg. Heute bin ich auch noch nicht zu gekommen und Freitag bin ich wieder bis Sonntag weg. Kann sein, ich komme dann erst zu. Ich melde mich auf jeden Fall und bis dahin schonmal DANKE :D

Verfasst: Do 14.Sep, 2006 08:33
von Bootenks
lass dir ruhig zeit ^^ ich bin übers wochenende inkl. Fr auch nicht da. ^^ Also machen wir es gleich Mo nächste Woche. *grins*

Verfasst: Mi 18.Okt, 2006 20:04
von TommyP
Hi,
es hat sich nun doch ein Fehler beim neuen Kontest gezeigt.
Wenn Bilder hochgeladen worden waren, zeigt der Kontest beim aufruf des Themas einen debug-fehler an.
Ein Mitglied schrieb mir die Korrektur per PN :D
ein Mitglied hat geschrieben:Nochmal kurz nachgedacht ... und es macht nur so Sinn

SELECT rate_pic_id, AVG(rate_point) AS rating FROM phpbb_album_rate WHERE rate_pic_id = 2104 GROUP BY rate_pic_id

Bilde eine Liste aller Bildernummern mit dem Mittelwert über die Bewertungen, aber betrachte nur das Bild mit der Nummer...

:-)
Nun müsste es gehen. Zum Ende des Monats weiß ich mehr. Dann ist die Auswertung...

Verfasst: So 26.Nov, 2006 18:02
von senyafin
Hallo zusammen,

ich würde den contest auch gerne einbauen.
kann mir dazu jemand mitteilen wo ich das Clowns Pack downloaden kann.

Merci vielmals

Verfasst: So 26.Nov, 2006 23:55
von oxpus
Das findest Du auf Smartor's Seite: http://smartor.is-root.com

Ähmn - darf ich um eine Downloadzusammenfassung bitten

Verfasst: Mo 27.Nov, 2006 23:51
von DogsandFun
Hallo Oxpus, hi Bootenks,

ich muss gestehen, dass ich nicht mehr durchblicke. Ich würde gerne den Album Mod samt Contest und allem was ich für seine Anwendung benötige installieren und habe nun die Datei album_v2055 runtergeladen. Ist es möglich die nun benötigten Addons mal in Links zum download zusammenzufassen - ich finde mich nicht mehr zurecht ! Vielen Dank

LG Dirk

Verfasst: Di 28.Nov, 2006 11:34
von senyafin
[quote="oxpus";p="66970"]Das findest Du auf Smartor's Seite: http://smartor.is-root.com[/quote]


Für all jene die nicht wie ich Stunden vorm PC zubringen wollen um das "Clowns SP" zu finden,
hier der Link dazu

http://www.smartor.oftheweek.de/dload.p ... file_id=57

Verfasst: Do 25.Jan, 2007 12:44
von volker58
hallo,

habe den mod auch mal eingebaut. feine sache. eine kleinigkeit, hoffe ich, habe ich aber. in der viewtopic wird er ja ganz unten angezeigt. wenn ich aber mehrere seiten bei dem thema habe, bleibt er auf seite 1 "kleben". kann man das ändern damit er immer unter dem letzten beitrag ist, also auf der letzten seite?

//EDIT
keiner irgendwie eine idee? geht ja auch wenn es auf jeder seite angezeigt wird, aber das macht es ja auch nicht, halt nur auf seite 1

Verfasst: So 28.Jan, 2007 08:22
von Max
[quote="volker58";p="69172"] in der viewtopic wird er ja ganz unten angezeigt. [/quote]

Also hast Du es so gemacht, wie ich auch.

Standardmäßig soll das Fenster ja unterhalb der Abstimmungsergebnisse sein, also oberhalb der Threadansicht.
Da ich aber im laufenden Betrieb gemerkt habe, dass die meisten User das dort nicht finden, habe ich das über die Schnellantwort gelegt. Dabei habe ich aber den selben Nachteil bemerkt wie Du, das Fenster ist dann nur auf der ersten Seite des Threads.
Leider habe ich dafür keine Lösung gefunden. Aber ich habe es "geschafft", dass das Fenster unter jeder Antwort steht - das wird dann aber nervig :p


Mit anderen Worten, ich kann Dir nicht weiterhelfen.

Aber ich schließe mich der Frage an, wie schafft man es, dass bei dieser Art der Kontestanzeige im Thread das Fenster auf allen Seiten erscheint?



Gruß Max

Verfasst: Mo 29.Jan, 2007 11:14
von volker58
ich habe da noch ein problem, nach beendigung des kontest steht unter den bildern nur rang. fehlt da nicht noch bissel was? hänge mal ein bild ran um das zusehen.