Autor | Zpráva | ||
---|---|---|---|
Michales Profil |
Ahoj,
prosím o radu jak zobrazit jen jeden zápas u každého týmu. Níže uvedený dotaz mi vypisuje všechny zápasy které danný tým odehrál. Já bych potřeboval zobrazit jen jeden zápas u každého týmu. // Ziskani dat $queryscores="SELECT CASE WHEN sportsdb_wins.winortie IN (2,5) THEN 'p' ELSE '' END AS priznak, sportsdb_wins.winid, sportsdb_wins.windate, sportsdb_wins.wintime, sportsdb_wins.rf, sportsdb_wins.ra, sportsdb_wins.winner, sportsdb_wins.loser, sportsdb_wins.wincomments, sportsdb_wins.field, sportsdb_wins.winortie, sportsdb_teams2.teamname AS winningteam, sportsdb_teams.teamname AS losingteam FROM sportsdb_wins LEFT JOIN sportsdb_teams ON sportsdb_wins.loser = sportsdb_teams.teamid LEFT JOIN sportsdb_teams AS sportsdb_teams2 ON sportsdb_wins.winner = sportsdb_teams2.teamid LEFT JOIN sportsdb_divs ON sportsdb_teams.teamdiv = sportsdb_divs.divid LEFT JOIN sportsdb_divs AS sportsdb_divs2 ON sportsdb_teams2.teamdiv = sportsdb_divs2.divid WHERE (sportsdb_divs.conference = $confid OR sportsdb_divs2.conference = $confid OR (sportsdb_wins.winconf = $confid AND (sportsdb_wins.loser = -1 OR sportsdb_wins.winner = -1)))AND sportsdb_divs.aktive = 1 AND sportsdb_wins.winortie != 3"; // Třídit podle týmu if (isset($_POST['teamtosort']) && $_POST['teamtosort'] != 'all') { $teamtosort = intval($_POST['teamtosort']); $queryscores .= " AND (sportsdb_wins.winner = $teamtosort OR sportsdb_wins.loser = $teamtosort)"; } $queryscores .= ' ORDER BY winid DESC '; $resultscores=mysql_query($queryscores); $numscores=mysql_num_rows($resultscores); $html = ""; // hlavni HTML zasobnik Zobrazení: Křížová tabulka |
||
Kajman Profil |
#2 · Zasláno: 2. 4. 2016, 18:57:29
Sice nechápu cíl, ale přjde mi, že to omezení bude nejjednodušší zaimplementovat do aplikace (php kódu), co dělá tu křížovou tabulku.
|
||
Michales Profil |
Kajman:
Možná bude jednodušší ale zbytečně bych tahal všechny výsledky, když chci jen ten poslední. Celý script |
||
Kajman Profil |
#4 · Zasláno: 3. 4. 2016, 00:43:12
Michales:
Pokud má být poslední vzájemný zápas (tedy u jednoho týmu více zápasů, ale v každém chlívku, jen jeden), stačí přeci přidat na řádek 172 příkaz break; |
||
Michales Profil |
#5 · Zasláno: 3. 4. 2016, 10:49:04
Kajman:
Ano to já vím že to stačí. Ale nastíním více oč mi jde. Nahoře chci mít čísla 1. 2. 3. 4. Ty čísla pak předávat pomocí $_GET do proměnné kterou využít v sql dotazu v OFFSETU. Prostě udělat přepínání mezi zápasy. Zobrazovat první, druhý, třetí a čtvrtý zápas po kliku na příslušné číslo. Přes php mě nenapadá jak to udělat. Proto ten nápad že by to mohlo jít přes sql pomocí LIMIT a OFFSET |
||
Kajman Profil |
#6 · Zasláno: 3. 4. 2016, 21:04:22
Tak to bych vypsal všechny a jen javascriptem zobrazoval první, druhý, třetí a čtvrtý zápas.
|
||
Michales Profil |
#7 · Zasláno: 3. 4. 2016, 21:06:46
Kajman:
Nenapada me jakym zpusobem |
||
Kajman Profil |
Např. v php si na řádku 171 označit pořadí
$html .= "<div class=\"row match_last match_last_".$c+1."\">..." body.umi_javascript .match_last {display:none} body.match_last_1 .match_last_1, body.match_last_2 .match_last_2, body.match_last_3 .match_last_3, body.match_last_4 .match_last_4 {display:block} A javascriptem si nazačátku nastavit pro body class, že prohlížeč umí javascript. document.body.className+='umi_javascript '; document.body.className=document.body.className.replace(/match_last_[0-9]+/,'')+' match_last_'+x; Ono by to šlo i jednoduše v tom php skriptu, ale právě tady bude zbytečné přenášení spousty dat spojených s tabulkou. Stačilo by místo for cyklu na řádku 144 nastavit $c na "chtěné pořádí zápasu mínus jedna". |
||
Časová prodleva: 9 let
|
0