|
|
Latest News |
Latest Threads |
|
 |
55.476 Posts & 4.945 Themen in 78 Foren |
|
|
|
 |
Forensuche |
|
Suchbegriff |
Benutzerauswahl |
Ergebnisse anzeigen |
 |
 |
Ergebnismeldung der Admins in der Last Reults Navbox? 72 Beiträge in diesem Thema |
|
|
 |
|
|
 |
|
 |
30.08.2012 - 16:07 Uhr |
|
|
|
Hey, ich bins nochmal ...
Habe eine Neue Frage.
Und Zwar benutzen wir in unserer Liga ja das LMO-Script in Kombination mit dem Ergpost - Ergebnismelder, damit die Trainer selber Ihre Ergebnisse eintragen können ...
Zusätzlich zu dem Ergebnismelder gibt es eine Navbox in der die letzen gespielten Spiele und ihr Resultat angezeigt werden ...
Das System funktioniert in etwa so ... Wenn ein Ergebnis von einem User mit dem Ergpost-Ergebnismelder ein Spiel einträgt, wird dieses Spiel in einer Datei namens allgames.txt gespeichert. Leider werden jedoch nur die Ergebnisse angezeigt die mit Ergpost gemeldet wurden und nicht die, die wir Admins manuell in den LigaManagerOnline eintragen.
Meine Frage wäre nun, in wie fern es möglich ist das zu ändern?
Für Pokalspiele, die wir eben manuell eintragen müssen wäre es halt schön wenn diese ebenfalls in der Last Result Navbox angezeigt wären.
Ich habe mir die Dateien vom Ergpost System mal angeschaut und denke dass die allgames.txt, wo die Ergebnisse gespeichert werden in dieser Datei erzeugt wird. (Die Datei hab ich unten angehangen).
Wäre schön wenn mir vielleicht nochmal jemand helfen könnte.
Ich verstehe aber auch wenn es nicht möglich ist oder zu viel Aufwand ist. 
Danke schonmal im Vorraus.
|
|
|
|
|
|
|
 |
|
 |
01.09.2012 - 11:22 Uhr |
|
|
|
Zitat Original geschrieben von Obumba
(Die Datei hab ich unten angehangen).
|
??
|
|
|
|
|
|
|
 |
|
 |
01.09.2012 - 11:57 Uhr |
|
|
|
bin mir ziemlich sicher, dass ich da eine hochgeladen hab ;o
|
|
|
|
|
|
|
 |
|
 |
02.09.2012 - 19:47 Uhr |
|
|
|
Nur damit ich das richtig verstehe:
Die User bearbeiten die Spiele mittels dieses Ergpost-Ergebnismelder, richtig? Und wie verwaltet ihr Admins das? Durch ein anderes Teil?
Versteh mich nicht falsch, aber das klingt für mich etwas komisch ^^""
Mir stellt sich halt die Frage:
Wenn die User mit den Ergpost-Ergebnismelder das Ergebnis eintragen, warum tun die Admins das nicht auch?
Und die wichtigere Frage wäre:
Wieso haben die Entwickler das nicht gleich so gemacht (also das es sozusagen keine scheinbare Trennung gibt) ?
---
Ich hab mir von der Datei nur den Part mit den Speichern angeguckt, wo halt gewisse Daten gespeichert werden. Wie Teams, Punktestand etc. Bei etwas klärender Form für o.g. könnte ich vielleicht besser gucken, was ich suchen muss. Denn knapp 2.000 Zeilen sind halt nicht ohne
|
|
|
|
|
|
|
 |
|
 |
03.09.2012 - 09:08 Uhr |
|
|
|
Der lmo ist wohl nicht darauf ausgelegt das man dort selbst Ergebnisse eintragen kann. Denke mal das ist eher für z.b. ne Fanseite für nen Verein wo man ne Ligatabelle mit einfachen mitteln darstellen und immer aktuell halten kann, unabhäng vom cms was dort dran hängt. Da kann man nur Admins und Mods eintragen (die man selbst im LMO anlegt mit Name und PW), User können nur Tabellen und Statistiken ansehen. Ne Benutzerschnittstelle zu nem cms gibts da nicht (ist vielleicht zuviel Arbeit bei der Masse an CMS)
Aber es gibt sonst wohl keine alternativen, was mich wundert, n ligamanager würde sicher reißenden Absatz finden da grob geschätzt jede 2. Hobbyonlineliga phpkit und den lmo benutzt und sich jeder Webmaster mit der Verbindung der 2 Systeme quälen muß bis Ergebnisse selbst eingetragen, Spielberichte im Forum gepostet werden oder man ne Übersicht der offenen Ligaspiele hat.
|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von fireball1982 - 03.09.2012 - 09:09 Uhr |
|
|
|
|
|
|
|
 |
|
 |
03.09.2012 - 09:32 Uhr |
|
|
|
Zitat Original geschrieben von k!r!ka
Die User bearbeiten die Spiele mittels dieses Ergpost-Ergebnismelder, richtig? Und wie verwaltet ihr Admins das? Durch ein anderes Teil?
Versteh mich nicht falsch, aber das klingt für mich etwas komisch ^^""
Mir stellt sich halt die Frage:
Wenn die User mit den Ergpost-Ergebnismelder das Ergebnis eintragen, warum tun die Admins das nicht auch?
Und die wichtigere Frage wäre:
Wieso haben die Entwickler das nicht gleich so gemacht (also das es sozusagen keine scheinbare Trennung gibt) ?
---
Ich hab mir von der Datei nur den Part mit den Speichern angeguckt, wo halt gewisse Daten gespeichert werden. Wie Teams, Punktestand etc. Bei etwas klärender Form für o.g. könnte ich vielleicht besser gucken, was ich suchen muss. Denn knapp 2.000 Zeilen sind halt nicht ohne |
Naja es ist so .. Diese Scripte sind von 2 verschiedenen Entwicklern ...
Das Ergpostsystem setzt voraus das jedes Team in den Tabellen einen Trainer in LMO eingetragen hat ...
Das heißt jeder Trainer kann dann seine Spiele über den Ergebnismelder eintragen.
Paralel haben Admins die Möglichkeit ebenfalls Spiele einzutragen. Allerdings über den LMO und nicht über den Ergebnismelder.
Die Spiele die über Ergpost gemeldet werden, speichert das System in der Datei allgames.txt (Und ich denke, dass diese Datei ganz unten in der Datei erzeugt wird , die ich hochgeladen habe. Ich habe halt nirgendwo anders einen Verweis gefunden auf diese Datei ... )
Und für uns wäre es halt auch schön wenn die Ergebnisse die wir über den LMO melden ebenfalls in der allgames.txt Datei eingetragen und somit auch in der "Letzte Ergebnisse Navbox" angezeigt werden.
Ich weiß dass es etwas kompliziert ist ... und verstehe auch wenn es dazu keine Lösung gibt. Aber fragen kostet ja nichts. ^^
mfg
|
|
|
|
|
|
|
 |
|
 |
03.09.2012 - 16:35 Uhr |
|
|
|
Ok, wenn ich das richtig verstehe, gibt es 2 Speichersysteme.
Einmal das LMO, hauptsächlich für die Admins, und dann den Ergebnismelder, wo die Trainer Eingaben tätigen können.
Und über das LMO können die Einträge erstellt und verwaltet werden. Beim Ergebnismelder können nur vorhandene Einträge in Form von Punktevergabe o.a. verwaltet werden.
Wo wird der Inhalt der LMO-Einträge denn gespeichert? VIelleicht kann man das ja in der Anzeigebox miteinander verbinden anstatt das in der allgames.txt zu speichern.
Ja, ich hab keine große Lust mich da reinzufummeln 
|
|
|
|
|
|
|
 |
|
 |
03.09.2012 - 18:28 Uhr |
|
|
|
Hab dir jetzt mal paar Screens gemacht, um dir das vielleicht etwas deutlicher zu machen wie das ganze funktioniert.
1.) Ligenübersicht
Also wie gesagt mit dem LMO-Script, können wir Admins jegliches Spiel in der Liga eintragen. So haben wir das eigentlich immer gemacht.
Die User haben Ihr Ergebnis im Forum reingeschrieben und die Admins haben dann die Ergebnisse eingetragen.
Wenn man sich über den Pfad pkic/public/lmo/lmoadmin.php einloggt, sieht man eine Übersicht der Ligen.
2.) Ergebnismeldung für die Admins
Wenn man eine Liga ausgewählt hat, kann man in der Liga die Spieltage auswählen und jegliche Ergebnisse eintragen.
Unter Manschaften werden die entsprechenden Teams mit Ihrem Trainern vermerkt und in der Spielerstatistik werden die Torschützen eingetragen.
3.) Ausgabe auf der Homepage
Wenn man fertig ist, sieht das dann so aus ...
Die User wiederum haben aber mit dem Ergpost System was auch eigentlich reibungslos funktioniert die Möglichkeit ab sofort Ihre Spiele selber einzutragen. Das funktioniert über diesen Ergebnismelder: (aufgerufen mit http://....../?path=ergpost.php)
Ergebnismelder für die User
Ich weiß es sieht so aus, als ob man die Möglichkeit hat alle Ligen und Spieltage zu editieren. Die Möglichkeit haben aber auch wir Admins über den Ergpost-Ergebnismelder nicht ...
Jeder User, der wie bereits oben erwähnt im LMO unter Manschaften als Trainer eingetragen ist, kann in seiner Liga nur für sein Team Ergebnisse melden.
Dies ist der Pfad der ganzen Dateien für die beiden Scripte:
http://www.imgimg.de/bild_pfad1cbe9916fpng.png.html
|
|
|
|
|
|
|
 |
|
 |
03.09.2012 - 18:28 Uhr |
|
|
|
Hier sind die Dateien im Ergpost-Ordner:
http://www.imgimg.de/bild_ergpost869ada96png.png.html
In diesem Verzeichnis unter ligen.ini muss man als Admin vorher die ganzen Ligen einstellen, die über den Ergebnismelder gemeldet werden können.
In der Allgames.txt - Datei werden alle gemeldeten Spiele in der Form gespeichert:
Liga;Spielzeit;Spieltag;Manschaft1;Manschaft2;Trainer1;Trainer2;Ergebnis;
Dann gibt es noch die Datei get-games.dh.inc
http://www.imgimg.de/bild_getgames4d21ff8apng.png.html
Aus dieser Datei wird die Ausgabe für die Letzte Ergebnisse Navbox gemacht.
So viel erstmal zur Erläuterung wie das ganze funktioniert ...
Und jetzt zu meiner eigentlichen Frage:
Das Ergpost System funktioniert ja eigentlich ... Nur möchte ich halt dass in der vom Ergpost mitgelieferten Navbox "Last Results", in der die letzten Resultate angezeigt werden nicht nur die gemeldeten Ergebnisse aus dem Ergpostergebnismelder angezeigt werden, sondern auch die Ergebnisse die wir Admins in den LMO eintragen.
Ich weiß, dass einer unserer Admins in einer seiner früheren Ligen einen Co-Admin hatte der das geschafft hat ... Zudem hat aber keiner mehr Kontakt.
Zu deiner Frage in welcher Datei die LMO-Einträge gespeichert sind kann ich dir leider keine Antwort geben ... ich denke die Dateien werden nur in der entsprechenden Ligadatei gespeichert ... Da diese jedoch (mit der Endung .l98) sich wohl nur mit dem LMO öffnen lässt weiß ich nicht wie man daraus etwas nehmen soll. :-(
Ich weiß dass es eventuell zu viel Aufwand sein könnte ...
Aber vielleicht ist es ja auch einfacher als ich denke ...
Wenn es zu schwierig ist sag es mir einfach .... wäre nicht so schlimm aber Fragen kostet ja hier nichts. :-D
Vielen Dank aufjedenfall schonmal für die Hilfe.
PS: In einem Teil klappts leider nicht. ^^
|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Obumba - 03.09.2012 - 18:28 Uhr |
|
|
|
|
|
|
|
 |
|
 |
28.09.2012 - 18:53 Uhr |
|
|
|
So, hab mich mal etwas rangesetzt. Anfangs etwas übertrieben und mit etwas gewagten Ideen, am Ende eine recht simple Methode .. 
Natürlich waren die Ideen am Anfang mit weit mehr Arbeit verbunden (zum Teil sogar gemacht ^^""), und etlichen Änderungen in mehreren Dateien 
Aber nun gut, hier das Werkchen:
---
1. - Neue Navigationsbox:
Nimm einfach eine vorhandene .php-Datei* (egal welche) und entfern den ganzen Inhalt und pack dann diesen Code rein:
Hier klicken zum aufklappen 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 | | PHP-Quelltext <?php
# ergPost - lastResult -- edit
# load league-ini; set infos in array
function lmo_lastResults()
{
global
$LMO_path,
$LMO_reLetter,
$config
;
$LMO_liga =$LMO_path.'/ligen/';
require_once
(
$LMO_path.'/init.php'
);
if (!is_dir($LMO_liga))
{
return;
}
$LMO_getLiga=glob($LMO_liga.'*.l98');
if (!isset($LMO_getLiga) || !is_array($LMO_getLiga) || count($LMO_getLiga)===0)
{
return;
}
$pathLiga =
$loopLiga =
$loopName =
$loopRounds =
$loopMatches =NULL;
$loopTeams =array();
$loopRound =
$loopTime =
$loopTeamA =
$loopTeamB =
$loopTeamAname =
$loopTeamBname =
$loopGoalA =
$loopGoalB =
$loopReport =NULL;
$loopContent =array();
# loop league
foreach ($LMO_getLiga as $pathLiga)
{
$loopLiga =parse_ini_file($pathLiga, TRUE);
$loopName
=
isset($loopLiga['Options']['Name'])
? $loopLiga['Options']['Name']
: $loopName
;
$loopRounds
=
isset($loopLiga['Options']['Rounds'])
? $loopLiga['Options']['Rounds']
: $loopRounds
;
$loopMatches
=
isset($loopLiga['Options']['Matches'])
? $loopLiga['Options']['Matches']
: $loopMatches
;
$loopTeams
=
isset($loopLiga['Teams'])
? $loopLiga['Teams']
: $loopTeams
;
# loop day per legaue
for ($loopR=1; $loopR<=$loopRounds; $loopR++)
{
$loopRound =$loopLiga['Round'.$loopR];
# loop match per day
for ($loopM=1; $loopM<=$loopMatches; $loopM++)
{
$loopTime
=
isset($loopRound['AT'.$loopM])
? trim ($loopRound['AT'.$loopM])
: $loopM
;
$loopTeamA
=
isset($loopRound['TA'.$loopM])
? trim ($loopRound['TA'.$loopM])
: 0
;
$loopTeamB
=
isset($loopRound['TB'.$loopM])
? trim ($loopRound['TB'.$loopM])
: 0
;
$loopTeamAname
=
isset($loopTeams[$loopTeamA])
? trim ($loopTeams[$loopTeamA])
: 'noName'
;
$loopTeamBname
=
isset($loopTeams[$loopTeamB])
? trim ($loopTeams[$loopTeamB])
: 'noName'
;
$loopTeamAname =str_replace(array_keys($LMO_reLetter), array_values($LMO_reLetter), $loopTeamAname);
$loopTeamBname =str_replace(array_keys($LMO_reLetter), array_values($LMO_reLetter), $loopTeamBname);
$loopGoalA
=
isset($loopRound['GA'.$loopM])
? trim ($loopRound['GA'.$loopM])
: '-1'
;
$loopGoalB
=
isset($loopRound['GB'.$loopM])
? trim ($loopRound['GB'.$loopM])
: '-1'
;
$loopReport
=
isset($loopRound['BE'.$loopM])
? trim ($loopRound['BE'.$loopM])
: NULL
;
$loopReport =str_replace($config['site_url'].'/', NULL, $loopReport);
if (stristr($loopGoalA, '-') || stristr($loopGoalB, '-'))
{
continue;
}
$loopContent[$loopTime]
=
array(
'teamA' =>$loopTeamA,
'teamB' =>$loopTeamB,
'teamAname' =>$loopTeamAname,
'teamBname' =>$loopTeamBname,
'goalA' =>$loopGoalA,
'goalB' =>$loopGoalB,
'report' =>$loopReport,
);
}
# loop match per day
}
# loop day per legaue
}
# loop league
return
isset ($loopContent)
&& is_array($loopContent)
&& count ($loopContent)!==0
? $loopContent
: array()
;
}
# load league-ini; set infos in array
$LMO_maxLoop=100;
$LMO_path =dirname(_lmophp_);
$LMO_path =str_replace($config['site_url'].'/', NULL, $LMO_path);
$LMO_reLetter
=
array(
'Ä' =>'Ae',
'Ö' =>'Oe',
'Ü' =>'Ue',
'ä' =>'ae',
'ö' =>'oe',
'ü' =>'ue',
' ' =>'_',
);
$LMO_content=lmo_lastResults();
$LMO_boxlink=array();
if (isset($LMO_content) && is_array($LMO_content) && count($LMO_content)!==0)
{
$loopContent =
$loopTeamNameA =
$loopTeamNameB =
$loopGoalA =
$loopGoalB =
$loopGoalWinA =
$loopGoalWinB =
$loopReport =
$loopImageA =
$loopImageB =
$loopImageReport=NULL;
$loopCounter =0;
krsort($LMO_content);
foreach ($LMO_content as $loopContent)
{
if ($loopCounter >= $LMO_maxLoop)
{
continue;
}
$loopCounter++;
$loopReport =trim ($loopContent['report']);
$loopTeamNameA =trim ($loopContent['teamAname']);
$loopTeamNameB =trim ($loopContent['teamBname']);
$loopGoalA =intval($loopContent['goalA']);
$loopGoalB =intval($loopContent['goalB']);
$loopGoalWinA
=
$loopGoalA===$loopGoalB
? 'orange'
: (
$loopGoalA > $loopGoalB
? 'green'
: 'red'
)
;
$loopGoalWinB
=
$loopGoalA===$loopGoalB
? 'orange'
: (
$loopGoalB > $loopGoalA
? 'green'
: 'red'
)
;
$loopImageA =$LMO_path.'/img/teams/small/'.$loopTeamNameA.'.png';
$loopImageB =$LMO_path.'/img/teams/small/'.$loopTeamNameB.'.png';
$loopReport
=
$loopReport==''
? NULL
: '<a href="'.$loopReport.'"><img src="'.$LMO_path.'/img/lmo-st1.gif" border="0" /></a>'
;
$LMO_boxlink[]
=
'
<div>
<img src="'.$loopImageA.'" border="0" />
-
<img src="'.$loopImageB.'" border="0" />
<span style="padding-right: 2px; color: '.$loopGoalWinA.';">'.$loopGoalA.'</span> : <span style="padding-left: 2px; color: '.$loopGoalWinB.';">'.$loopGoalB.'</span>
'.$loopReport.'
</div>
'
;
}
}
# ergPost - lastResult -- edit
return $LMO_boxlink;
?> | |  |
Nein, das ist nicht viel .. Nur viel Abfragerei ^^""
-
* =
Wenn ich eine Hochlade, wird wohl oder übel der Zeichensatz innerhalb der Datei umgewandelt und es kommen Fehler. Deswegen also einfach eine vorhandene .php-Datie nehmen, da der Zeichensatz eh schon korrekt ist.
-
Der Name der .php-Datei kann heisen, wie du möchtest. Ich würd ja, um es zumindest einbisschen zu verdeutlichen, so einen Namen nehmen: navbox.ergPost_lastResult.php
Wichtig ist eigentlich nur der nicht-fettgedruckte Teil (navbox.***.php), damit das phpKit die Datei als auswählbare Navbox erkennt.
---
2. - Kleine Änderung:
Nachdem wir also nun eine neue Navbox-Datei haben, muss leider eine Änderung im LMO-System stattfinden. Keine Angst, das ist ganz einfach und ganz wenig (eine Zeile).
Dazu öffnen wir die Datei pkinc/public/lmo/lmo-savefile.php und suche diese Zeile:
| PHP-Quelltext fputs($datei,"BE".$j."=".$mberi[$i-1][$j-1]."\n"); | |
Diese Zeile kommt nur einmal in der Datei vor.
Und ersetzen sie hiermit:
| PHP-Quelltext # ergPost - lastResult -- edit
# old code:
# fputs($datei,"BE".$j."=".$mberi[$i-1][$j-1]."\n");
fputs($datei,"BE".$j."=".($mberi[$i-1][$j-1] ? (stristr($mberi[$i-1][$j-1], '"') ? $mberi[$i-1][$j-1] : '"'.$mberi[$i-1][$j-1].'"') : NULL)."\n");
# ergPost - lastResult -- edit | |
Der alte Code bleibt innerhalb der Kommentierung erhalten, für den Fall der Fälle ;o
Das ist wichtig, da die INI-Datei (diese .l98-Datei) die Werte sonst ohne Maskierung speichert (frag mich jetzt nicht warum es dies ansich nie bei Strings|Texten tut), was wiederum für die neue Navbox einen Fehler verursachen würde.
Und Fehler brauchen wir einfach nicht ..
-
Jetzt kommt natürlich ein klein wenig Arbeit nochmal auf dich zu:
Diese Änderung in der lmo-savefile.php hat keine automatische Wirkung bei bereits vorhandenen Einträgen. Deswegen must nochmals alle vorhandenen Einträge neuspeichern. Die Werte können alle gleich bleiben, es ist halt nur wichtig, das eine erneute Speicherung stattfindet.
Also so:

Es reicht auch aus, nur einmal pro Liga zu speichern, da die Speicherung auf die gesamte Liga mit INI-Datei wirkt.
---
Aussehen tut die Navbox bei mir so:

Ich hab natürlich keine TeamBilder, aber das macht ja nichts ;o
Allerdings gibt es noch die Farben der Punkte, sowie eine Grafik (wie im Adminbereich im LMO) für vorhandene Berichte.
-
Es gibt noch einen kleinen Unterschied zum ursprünglichen ergPost-Navbox;
Die alte Navbox bezieht seine Infos anhand der allgames.txt, die neue Anhand der INI-Dateien der Ligen, sortiert nach den neusten Datums-Angaben und z.Z. auf 5 Einträge begrenzt (Variable).
-
Damit mehr Einträge erscheinen, einfach diese Zeile in der neu-erstellten Navbox suchen:
| PHP-Quelltext $LMO_maxLoop=5; | |
Und einfach die 5 durch eine andere Zahl ersetzen.
---
So, ich denke, das ist das, was du im Sinne hattest. Wenn nicht, tja, was solls ;o
Ach ja, ich weiss nicht, wie sich das ganze Serverseitig wiederspiegelt. Vorallem für den Seitenaufbau der Seite 
|
|
|
|
|
|
|
 |
|
 |
29.09.2012 - 17:49 Uhr |
|
|
|
Zunächst nochmal Großen Dank dass du mir dabei so helfen kannst.
So wie ich das unten auf den Bildern sehe, ist das genau das was wir gesucht haben
Ich habe jetzt den Inhalt der Navbox eingefügt und auch die Änderung in der LMO-Savefile gemacht und habe leider eine kleine Fehlermeldung :/
Warning: require_once(./init.php) [function.require-once]: failed to open stream: No such file or directory in /users/fifagamers/www/pkinc/publicinc/navbox.lastresults2.php on line 16
Fatal error: require_once() [function.require]: Failed opening required './init.php' (include_path='.') in /users/fifagamers/www/pkinc/publicinc/navbox.lastresults2.php on line 16
Weißt du was das bedeutet?
Trotzdem nochmal Danke kann dir gar nicht genug Danke Sagen 
|
|
|
|
|
|
|
 |
|
 |
29.09.2012 - 18:31 Uhr |
|
|
|
Das bedeutet, das ich was vergessen habe zu prüfen .. 
Tja, dachte mir halt, lass den Pfad zum LMO halt über vorhandenes setzen, aber Pustekuchen. Muss dann selbst gesetzt werden. Schade eigentlich, nicht mal sowas funktioniert einwandfrei ..
Naja, hier nochmal der Code komplett, leicht überarbeitet (das relevante ganz oben, rest unten + relevante Fehlerausgabe).
Hier klicken zum aufklappen 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 | | PHP-Quelltext <?php
# ergPost - lastResult -- edit
#
#
# max loops
$LMO_maxLoop=5;
# path to LMO
$LMO_path ='pkinc/public/lmo';
$LMO_reLetter
=
array(
'Ä' =>'Ae',
'Ö' =>'Oe',
'Ü' =>'Ue',
'ä' =>'ae',
'ö' =>'oe',
'ü' =>'ue',
' ' =>'_',
);
$LMO_content=lmo_lastResults();
$LMO_boxlink=array();
# exists, filled :: content
if (isset($LMO_content) && is_array($LMO_content) && count($LMO_content)!==0)
{
# null vars
$loopContent =
$loopTeamNameA =
$loopTeamNameB =
$loopGoalA =
$loopGoalB =
$loopGoalWinA =
$loopGoalWinB =
$loopReport =
$loopImageA =
$loopImageB =
$loopImageReport=NULL;
$loopCounter =0;
# get error
if (isset($LMO_content['ERROR']))
{
return
array(
$LMO_content['ERROR']
);
}
if (!isset($loopCounter, $LMO_maxLoop))
{
return
array(
'intern::$loopCounter or $LMO_maxLoop not found.'
);
}
# sort and loop content
krsort($LMO_content);
foreach ($LMO_content as $loopContent)
{
# set max loops
if ($loopCounter >= intval($LMO_maxLoop))
{
continue;
}
$loopCounter++;
$loopReport =trim ($loopContent['report']);
$loopTeamNameA =trim ($loopContent['teamAname']);
$loopTeamNameB =trim ($loopContent['teamBname']);
$loopGoalA =intval($loopContent['goalA']);
$loopGoalB =intval($loopContent['goalB']);
$loopGoalWinA
=
$loopGoalA===$loopGoalB
? 'orange'
: (
$loopGoalA > $loopGoalB
? 'green'
: 'red'
)
;
$loopGoalWinB
=
$loopGoalA===$loopGoalB
? 'orange'
: (
$loopGoalB > $loopGoalA
? 'green'
: 'red'
)
;
$loopImageA =$LMO_path.'/img/teams/small/'.$loopTeamNameA.'.png';
$loopImageB =$LMO_path.'/img/teams/small/'.$loopTeamNameB.'.png';
$loopReport
=
$loopReport==''
? NULL
: '<a href="'.$loopReport.'"><img src="'.$LMO_path.'/img/lmo-st1.gif" border="0" /></a>'
;
$LMO_boxlink[]
=
'
<div>
<img src="'.$loopImageA.'" border="0" />
-
<img src="'.$loopImageB.'" border="0" />
<span style="padding-right: 2px; color: '.$loopGoalWinA.';">'.$loopGoalA.'</span> : <span style="padding-left: 2px; color: '.$loopGoalWinB.';">'.$loopGoalB.'</span>
'.$loopReport.'
</div>
'
;
}
# sort and loop content
}
# exists, filled :: content
return
$LMO_boxlink
;
# load league-ini; set infos in array
function lmo_lastResults()
{
global
$LMO_path,
$LMO_reLetter
;
$LMO_liga =$LMO_path.'/ligen/';
# exists :: init-file
if (!is_file($LMO_path.'/init.php'))
{
return
array(
'ERROR' =>'lmo::init.php-file not found. searched path: '.$LMO_path.'/init.php'
);
}
require_once
(
$LMO_path.'/init.php'
);
# exists :: liga-folder
if (!is_dir($LMO_liga))
{
return
array(
'ERROR' =>'lmo::ligen-folder not found. searched path: '.$LMO_liga
);
}
$LMO_getLiga=glob($LMO_liga.'*.l98');
# exists, filled :: liga.init-file
if (!isset($LMO_getLiga) || !is_array($LMO_getLiga) || count($LMO_getLiga)===0)
{
return
array(
'ERROR' =>'lmo::liga.file not found.'
);
}
# null-vars
$pathLiga =
$loopLiga =
$loopName =
$loopRounds =
$loopMatches =NULL;
$loopTeams =array();
$loopRound =
$loopTime =
$loopTeamA =
$loopTeamB =
$loopTeamAname =
$loopTeamBname =
$loopGoalA =
$loopGoalB =
$loopReport =NULL;
$loopContent =array();
# loop league
foreach ($LMO_getLiga as $pathLiga)
{
$loopLiga =parse_ini_file($pathLiga, TRUE);
$loopName
=
isset($loopLiga['Options']['Name'])
? $loopLiga['Options']['Name']
: $loopName
;
$loopRounds
=
isset($loopLiga['Options']['Rounds'])
? $loopLiga['Options']['Rounds']
: $loopRounds
;
$loopMatches
=
isset($loopLiga['Options']['Matches'])
? $loopLiga['Options']['Matches']
: $loopMatches
;
$loopTeams
=
isset($loopLiga['Teams'])
? $loopLiga['Teams']
: $loopTeams
;
# loop day per legaue
for ($loopR=1; $loopR<=$loopRounds; $loopR++)
{
$loopRound =$loopLiga['Round'.$loopR];
# loop match per day
for ($loopM=1; $loopM<=$loopMatches; $loopM++)
{
$loopTime
=
isset($loopRound['AT'.$loopM])
? trim ($loopRound['AT'.$loopM])
: $loopM
;
$loopTeamA
=
isset($loopRound['TA'.$loopM])
? trim ($loopRound['TA'.$loopM])
: 0
;
$loopTeamB
=
isset($loopRound['TB'.$loopM])
? trim ($loopRound['TB'.$loopM])
: 0
;
$loopTeamAname
=
isset($loopTeams[$loopTeamA])
? trim ($loopTeams[$loopTeamA])
: 'noName'
;
$loopTeamBname
=
isset($loopTeams[$loopTeamB])
? trim ($loopTeams[$loopTeamB])
: 'noName'
;
$loopTeamAname =str_replace(array_keys($LMO_reLetter), array_values($LMO_reLetter), $loopTeamAname);
$loopTeamBname =str_replace(array_keys($LMO_reLetter), array_values($LMO_reLetter), $loopTeamBname);
$loopGoalA
=
isset($loopRound['GA'.$loopM])
? trim ($loopRound['GA'.$loopM])
: '-1'
;
$loopGoalB
=
isset($loopRound['GB'.$loopM])
? trim ($loopRound['GB'.$loopM])
: '-1'
;
$loopReport
=
isset($loopRound['BE'.$loopM])
? trim ($loopRound['BE'.$loopM])
: NULL
;
if (stristr($loopGoalA, '-') || stristr($loopGoalB, '-'))
{
continue;
}
$loopContent[$loopTime]
=
array(
'teamA' =>$loopTeamA,
'teamB' =>$loopTeamB,
'teamAname' =>$loopTeamAname,
'teamBname' =>$loopTeamBname,
'goalA' =>$loopGoalA,
'goalB' =>$loopGoalB,
'report' =>$loopReport,
);
}
# loop match per day
}
# loop day per legaue
}
# loop league
return
isset ($loopContent)
&& is_array($loopContent)
&& count ($loopContent)!==0
? $loopContent
: array()
;
}
# load league-ini; set infos in array
#
#
# ergPost - lastResult -- edit
?> | |  |
|
|
|
|
|
|
|
 |
|
 |
29.09.2012 - 19:35 Uhr |
|
|
|
Klasse Arbeit bishier hin
Im Grunde funktioniert es super ... allerdings hab ich vielleicht noch ein paar Kleinigkeiten die nicht so genau funktionieren.
Zuerst mal noch eine Verständnisfrage:
Macht er das für alle Ligen die im LMO Ordner angezeigt werden?
Oder muss ich das irgendwo einstellen?
Desweiteren ist mir aufgefallen, dass manche Spiele nicht angezeigt werden können.
Ich habe mal ein Bild gemacht um dir das zu erklären.
http://s3.imgimg.de/uploads/lmo70318cd9png.png
Die dazu geschriebenen Zahlen sind die Reihenfolge der eingetragenen Spiele
Trage ich spiel 1 ein, funktioniert es bestens.
Trage ich Spiel 2 ein, wird nur Spiel 1 angezeigt.
Trage ich Spiel 3 ein, wird nur Spiel 1 angezeigt.
Trage ich Spiel 4 ein, wird nur Spiel 4 angezeigt.
Das würde also bedeuten, dass er alle Spiele die über dem zuerst eingetragenen Spiel nicht in der Navbox anzeigt.
Und wenn man eins unter diesem zuerst eingetragenen Spiel einträgt er keins mehr davor setzt
Hoffe ich konnte den Punkt etwas erklären.
Und dann habe ich im Header noch eine Fehlermeldung
Warning: syntax error, unexpected '!' in pkinc/public/lmo/ligen/1el6.l98 on line 564 in /users/fifagamers/www/pkinc/publicinc/navbox.lastresults2.php on line 201
Warning: syntax error, unexpected '!' in pkinc/public/lmo/ligen/2el6.l98 on line 787 in /users/fifagamers/www/pkinc/publicinc/navbox.lastresults2.php on line 201
Die Line, und der Name der Liga sind immer unterschiedlich ...
-----------------------------------------
Noch eine Verständnisfrage ...
Läuft das unabhängig vom Ergpost-System? Oder benötigt man dieses dazu?
Wenn es abhängig ist, könnte man es nicht eben unabhängig machen?
Ich fände das etwas einfacher, da die Spiele die über den Ergebnismelder von Ergpost gemeldet werden ja immer ein Datum eingetragen bekommen. Und wenn wir dann Spiele eintragen, ebenfalls mit dem richtigen Datum und der richtigen Zeit müsste in der Navbox doch alles der Reihe nach ausgegeben werden oder irre ich mich da?
Ach man... Sorry so viele Fragen
Tut mir leid wenn ich dich nerve. >.<
Und mach das nur wenn du Lust und Zeit hast ... Ich bin dir trotzdem total dankbar 
|
|
|
|
|
|
|
 |
|
 |
29.09.2012 - 20:05 Uhr |
|
|
|
Zitat Zuerst mal noch eine Verständnisfrage:
Macht er das für alle Ligen die im LMO Ordner angezeigt werden?
Oder muss ich das irgendwo einstellen? |
Das Script liest den Ordner lmo/ligen/ aus, sucht die .l98-Dateien und nimmt davon den Inhalt zur weiteren Verarbeitung.
Heist: Er nimmt alle Ligen die im besagten Ordner sind. Unterordner nicht.
Zitat Desweiteren ist mir aufgefallen, dass manche Spiele nicht angezeigt werden können.
Ich habe mal ein Bild gemacht um dir das zu erklären. |
Du machst es einen nicht gerade leicht Na gut, eigener Fehler ^^"
Die Einträge, die dann später ausgegeben werden, werden über den Timestamp bestimmt: Also die Zeit.
Ich hab jetzt nicht bedacht, das mind. zwei Spiele zur selben Zeit laufen können. In diesen Falle würde immer das allerletzte (oder allererste? komisch .. ^^") Spiel, das die gleiche Zeit hat, angezeigt.
Nun gut, da guck ich nochmal, damit es da keine Probleme mehr gibt ;o
Zitat Warning: syntax error, unexpected '!' in pkinc/public/lmo/ligen/1el6.l98 on line 564 in /users/fifagamers/www/pkinc/publicinc/navbox.lastresults2.php on line 201 |
Das ist genau so eine Meldung, die mit der Bearbeitung der Datei lmo/lmo-savefile.php unterbunden werden sollte. Allerdings galt die Änderung nur den Link, den man im Adminbereich anhängen kann (z.B. den ergPost-Bericht).
Wie ich da bereits gesagt habe, verstehe ich eh nicht, warum Text-Daten nicht maskiert werden .. Sowas ist eigentlich üblich bei .ini-Dateien. Ich muss aber gestehen, das ich nicht wirklich geguckt habe, wie das LMO die Daten aus der Datei liest. War mir am Ende doch einfach zu viel Arbeit da einzusteigen 
---
Könntest du mal den Part posten, der in der Datei lmo/ligen/1el6.l98 in Zeile 564 steht?
Zum Öffnen einfach die Dateit mit den Windows-Editor öffnen lassen, den Inhalt kopieren und z.B. in Wordpad einfügen. Naja, besser wäre ein Editor mit Zeilenanzeige ^^""
Einfach damit ich weiss, unter welchen Begriff das gespeichert wird.
Zitat Noch eine Verständnisfrage ...
Läuft das unabhängig vom Ergpost-System? Oder benötigt man dieses dazu?
Wenn es abhängig ist, könnte man es nicht eben unabhängig machen?
Ich fände das etwas einfacher, da die Spiele die über den Ergebnismelder von Ergpost gemeldet werden ja immer ein Datum eingetragen bekommen. Und wenn wir dann Spiele eintragen, ebenfalls mit dem richtigen Datum und der richtigen Zeit müsste in der Navbox doch alles der Reihe nach ausgegeben werden oder irre ich mich da? |
Das läuft unabhängig vom ergPost-System. Die Verarbeitung der Daten läuft über die Dateien im Ordner lmo/ligen/ und wird entsprechend ausgegeben. Einzig bei Spielen, die einen ergPost-Bericht besitzen, erscheint eine kleine Grafik. Die Abfrage läuft aber wieder über die Dateien im Ordner lmo/ligen/. In diesen Dateien wird nämlich der Link zum Bericht gespeichert (siehe das erste Bild, ganz rechts die Textspalte).
|
|
|
|
|
|
|
 |
|
 |
29.09.2012 - 20:38 Uhr |
|
|
|
|
|
|
 |
|
|
 |
Ähnliche Themen |
|
|
|
|
|
|
|
|