Schalke? Haben die nicht eh alle Spieler verkauft - passt schon so
Beiträge von patchstar
Ich habe einen Blog Artikel verfasst - Wie benutze ich die Suche richtig - Bitte diesen beachten und auch umsetzen bevor Ihr ein Neues Thema eröffnet!
-
-
Wird der Kader dump nochmal bereitgestellt bzw kann ich mir denn irgendwie ziehen?
-
ah ok, ich seh grad, dass in $tipps[$data['u_id']]['punkte_total'] leider nicht die aktuellen Punkte des Spieltages drin stehen.
Ich habe meinen Beitrag oben abgeändert.Sortierfunktion muss geändert werden und vorher müssen aber erstmal die Punkte addiert werden. Das geschieht eigentlich erst weiter unten im Code.
Von daher muss übernoch folgende Schleife
-
Hallo,
nach dem Umstellen wird keine Ranglistenmail mehr versendet.Kann mir einer von euch mir helfen ???
-
vor Sortieraufruf in tipps.php
PHP- // punkte_sum in Tipps Array aufnehmen if (isset($tipps) && is_array($tipps)) { foreach ($tipps as $user => $eigeneTipps) { $tipps[$user]['punkte_sum'] = 0; foreach ($spiele as $id => $values) { $sp_pts = getPunkte($user, $id); // Punkte berechnen $tipps[$user]['punkte_sum'] = $tipps[$user]['punkte_sum'] + $sp_pts; } } }uasort ($tipps, 'sort_tip_overview'); #Neue Sortierung
sort_tip_overview folgendermaßen ändern:PHP- # Sortierfunktion für die Tippübersicht-Tabelle
- function sort_tip_overview ($a, $b){
- if ($a['punkte_sum'] == $b['punkte_sum']) {
- if ($a['count'] < $b['count']) {
- return ($a['name'] < $b['name']) ? -1 : 1;
- }
- return ($a['count'] < $b['count']) ? -1 : 1;
- }
- return ($a['punkte_sum'] > $b['punkte_sum']) ? -1 : 1;
- }
Dann sollte es klappen -
Mein 1und1 Cloud Server hat das selbe Problem. MySQL und Server arbeiten mit utc Zeit. Somit werden die Anstosszeiten zwar korrekt angezeigt, die User können aber 2 Stunden nach Anstoß noch tippen. Beim Versuch über plesk die Serverzeit zu ändern mit abschließendem Neustart ist mir der komplette Cloud Server abgeschmiert. 1und1 meinte es könnte sogar ein irreparabeler Schaden am Server sein. Am Montag will sich das nochmal ein Experte anschauen. Das wäre aber extrem ärgerlich da ich auf dem Server noch viele anderer Seiten und Services drauf laufen hatte. Also Vorsicht damit!
Weiß jemand wie sich der MySQL Server auf die Timezone Europa/Berlin umstellen lässt?
Die Lösung mit den +2 im SQL Befehl halte ich für nicht so glücklich.- es müssen mehrer SQL Befehle angepasst werden
- was passiert bei Umstellung Sommer/Winterzeit? Muss dann alles auf +1 angepasst werden ?
-
Also für mich ist in der functions.inc.php die ganze Funktion getMissingBonustipps nicht schlüssig. Mit der PHP Version hat das nichts zu tun.
folgende Ersetzung sollte Abhilfe schaffen:
ersetzte
PHP- function getMissingBonustipps($user_id){ global $_SESSION, $saison, $tbl; if (isset($_SESSION['s_user'])) { if ( ! isset($user_id)) { $user_id = $_SESSION['s_user']; } $complete_tipps = ""; // Zuerst alle IDs der Antworten auf type "Spieler" feststellen. Diese werden in der nächsten Abfrage ausgeschlossen $sql = "SELECT bid, subbid FROM ". $tbl['bonus_tipps'] ." WHERE liga = '". $saison['liga'] ."'" ." AND saison = ". $saison['jahr2'] ." AND usr = ". $user_id ." AND type = 'spieler'"; $query = mysql_query($sql); while ($row = mysql_fetch_array($query)) { $complete_tipps .= "(bf.id != ". $row['bid'] ." AND bf.subid != ". $row['subbid'] .") AND "; } if ($complete_tipps != "") { $complete_tipps = " (". substr($complete_tipps, 0, -5) .")"; } // Anzahl fehlende oder unvollständige Antworten auslesen $sql = "SELECT bf.id, bf.subid, bf.type, bp.date, bt.id AS bt_id, bt.type AS bt_type FROM ". $tbl['bonus_fragen'] ." AS bf" ." LEFT JOIN ". $tbl['bonus_punkte'] ." AS bp ON bp.bid = bf.id" ." LEFT JOIN ". $tbl['bonus_tipps'] ." AS bt ON (bt.bid = bf.id AND bt.subbid = bf.subid)" ." WHERE bf.liga = '". $saison['liga'] ."'" ." AND bf.saison = ". $saison['jahr2'] ." AND (bf.type != bt.type OR bt.type IS NULL)" . ($complete_tipps != "" ? " AND ". $complete_tipps : "") ." GROUP BY bf.id, bf.subid" ." HAVING bp.date > ". time(); $query = mysql_query($sql); $count_missing_tipps = mysql_num_rows($query); if ($count_missing_tipps > 0) { return $count_missing_tipps; } else { return FALSE; } } else { return FALSE; }}
mit
PHP- function getMissingBonustipps($user_id)
- {
- global $_SESSION, $saison, $tbl;
- if (isset($_SESSION['s_user']))
- {
- if ( ! isset($user_id))
- {
- $user_id = $_SESSION['s_user'];
- }
- // Anzahl fehlende oder unvollständige Antworten auslesen
- $sql = "SELECT bf.id, bf.subid, bf.type, bp.date, bt.id AS bt_id, bt.type AS bt_type FROM ". $tbl['bonus_fragen'] ." AS bf"
- ." LEFT JOIN ". $tbl['bonus_punkte'] ." AS bp ON bp.bid = bf.id"
- ." LEFT JOIN ". $tbl['bonus_tipps'] ." AS bt ON bt.bid = bf.id AND bt.subbid = bf.subid and bt.type = bf.type and bt.usr=". $user_id
- ." WHERE bf.liga = '". $saison['liga'] ."'"
- ." AND bf.saison = ". $saison['jahr2']
- ." AND (bf.type != bt.type OR bt.type IS NULL)"
- . ($complete_tipps != "" ? " AND ". $complete_tipps : "")
- ." GROUP BY bf.id, bf.subid"
- ." HAVING bp.date > ". time();
- $query = mysql_query($sql);
- $count_missing_tipps = mysql_num_rows($query);
- if ($count_missing_tipps > 0)
- {
- return $count_missing_tipps;
- }
- else
- {
- return FALSE;
- }
- }
- else
- {
- return FALSE;
- }
- }
Ein kleiner Bug besteht jedoch noch. Sobald der Bonustipp abgegeben wurde, steht immer noch die falsche Anzahl drin.
Erst nach erneutem Seitenaufruf steht die korrekte Anzahl drin.
Problem hier: Die Abfrage nach der fehlenden Anzahl erfolgt vor der Speicherung des Tipps. Entweder müsste die Abfrage später erfolgen oder man lebt einfach damitedit: das Thema wurde hier schon mal behandelt
-
Wie oldi schon sagt, Fehler 500 kann alles mögliche sein.
Schalte doch mal in der inc.config.php ganz unten das error_reporting an.
Am besten gleichmit
ersetzen
Wenn du dann immer noch keine Fehlermeldung erhälst solltest du den error log in den PHP Einstellungen aktivieren und anschließend mal schauen was es ausspuckt
-
Das kann ich leider nicht wirklich sagen.
Irgendwas geht schief beim Rendern des Rückgabewertes. Ich weiß leider auch nicht wie die Jungs von xcript das programmiert haben.
Das erscheint mir aus heutiger Sicht etwas zu kompliziert. Mit jQuery wäre das wesentlich einfacher und durchsichtiger gewesen.Das "uncaught exception: [object Object]" dürfte nicht kommen. Hier geht was schief.
Leider ist der Fehler wenig aussagekräftig (ohne Zeilennummer und Datei) -
Also wie es aussieht wird der Tipp sauber bei dir gespeichert (auch ohne den Speichern Button)
Aber die Punkte und der grüne Haken kommen bei dir nicht mehr. Da muss es was zerschossen haben. -
@alois12345
Hast du vielleicht unabsichtlich einen JS Fehler drin?
Schau doch einfach mal in deiner Browser Console oder mit Hilfe von Firebug (Addon für Firefox) ob alles glatt läuft.
Bei der Tippabgabe wird ein Request an den Server abgesetzt, anschließend muss es eine Antwort geben (wie auf meinem Screenshot zu sehen).
Wenn du Hilfe brauchst kannst du mir auch einfach mal den Link zu deinem Tippspiel schicken. -
sicher @oldie ? Es geht lediglich um die Anzeige im Reiter Tippen/Datumsauswahl. Ich hatte hier noch die originale File
-
Danke @Kassi - funzt
-
Ja, Kassi hat hier vollkommen recht. Das ist der korrekt fix! Die andere Lösung ist nicht sauber.
-
@Sprite01
Hattest du die EM schon mal durchgespielt?
Führe mal folgenden SQL Befehlt bei dir durchEigentlich dürfte da kein Resultat bei rauskommen.
-
Also 1x in der gruppen.content.php
Sucheersetze mit
Und 2x in der inc.functions.php
Findeersetze mit
Das ganze hat keine Auswirkung auf Logiken für das weitere Turnier.
Es handelt sich hier nur um SQL Abfragen für die Darstellung bzw. die "Was wäre wenn" Analyse
Das "and type = 0" besagt, dass nur Gruppenspiele berücksichtigen werden sollen -
gibt es eine Möglichkeit bei denn Bonus Tipps die Punkte Staffelung zu deaktivieren?
Trag doch einfach überall die selbe Anzahl an Punkten ein.
Oder du löscht in der DB jeweils den zweiten und dritten Datensatz
Ungetestet, bitte vorher auf jeden Fall ein Backup machen.
-
-
Hatte es auch, erst das erhöhen der Berichtigung des img/php/baum.png auf 777 brachte Abhilfe!
klappt -Danke
-
ich sehe grad - du hast einen Windows Server im Einsatz. Wie es ausschaut ist Soap in deiner php conig nicht aktiviert.
Schau mal hier: http://stackoverflow.com/quest…-i-install-soap-extension vielleicht hilft dir das weiter.