Autor | Zpráva | ||
---|---|---|---|
Nuimi Profil |
#1 · Zasláno: 26. 7. 2015, 13:20:32
Ahoj, chci se zeptat jak se dá zobrazit count se Select dotazem na stránkách
$dochazka= "SELECT program, count(odprac_h) AS 'Odpracované h.' FROM dochazka WHERE program = '" . $program ."'"; $ukaz = $db->query($dochazka); echo('<table class="table table-hover"> <tbody> <tr> <td>Program</td> <td>Odpracované h.</td> </tr> </tbody>'); while($row = $ukaz -> fetch_assoc()) { echo ("<form method=\"post\"> <tr> <td>". $row['program'] ."</td> <td>".$row['count(odprac_h)']."</td> </tr> </form> </table>"); } |
||
lionel messi Profil |
#2 · Zasláno: 26. 7. 2015, 13:31:36
Nuimi:
Namiesto $row['count(odprac_h)'] použiješ zodpovedajúci alias, teda $row['Odpracované h.'] .
|
||
Radek9 Profil |
#3 · Zasláno: 26. 7. 2015, 13:47:05
Nuimi:
A mám pocit, že by se v SQL dotazu měly použít zpětné apostrofy, tedy `Odpracované h.` . Doporučil bych ale možná zvolit jednodušší název toho sloupce, pak nejsou potřeba vůbec. Třeba odpracovane_h .
|
||
quatzael Profil |
Radek9:
„A mám pocit, že by se v SQL dotazu měly použít zpětné apostrofy, tedy `Odpracované h.`.“ To by mě taky zajímalo jak to je "správně". phpMyAdmin mi je tam pořád předhazuje, ale když zadávám normálně dotaz s klasickýma apostrofama ' ' , tak s tím vůbec žádnej problém není.
|
||
Keeehi Profil |
#5 · Zasláno: 26. 7. 2015, 14:09:25
quatzael:
„To by mě taky zajímalo jak to je "správně"“ Apostrofy musejí být okolo řetězců (třeba okolo hodnot které se mají uložit do sloupce typu varchar). Zpětné apostrofy mají být kolem názvů sloupců, tabulek, databází atp. Pokud pojmenováváš sloupce nějak inteligentně, a je jednoznačné, že se jedná zrovna o sloupec, mohou se ty zpětné apostrofy vynechat. Pokud ale pro jméno sloupce použiješ klíčové slovo, nebo tam máš tečku nebo něco jiného ošklivého, tak tam ty zpětné apostrofy být musejí, jinak to databáze nezvládne rozpoznat a správně zpracovat. Jelikož zbytečné zpětné apostrofy ničemu nevadí, cpe je phpMyAdmin pro jistotu všude. Nevím jak se těm zpětným apostrofům říká správně. |
||
Nuimi Profil |
#6 · Zasláno: 27. 7. 2015, 20:55:50
$program=$_POST['program']; $mesic =$_POST['mesic']; if(isset($_POST['program'])) { $dochazka_p= "SELECT program, sum(odprac_h) AS 'Odpracované h.' FROM dochazka WHERE program = '" . $program ."'"; $ukaz_p = $db->query($dochazka_p); while($row_p = $ukaz_p -> fetch_assoc()) { echo ("<table class=\"table table-hover\"> <tbody> <tr> <td>Program</td> <td>Odpracované h.</td> </tr> </tbody> <tr> <td>". $row_p['program'] ."</td> <td>".$row_p['Odpracované h.']."</td> </tr> </table>"); } } else if(isset($_POST['mesic'])) { $dochazka_m= "SELECT mesic, sum(odprac_h) AS 'Odpracované h.' FROM dochazka WHERE mesic = '" . $mesic ."'"; $ukaz_m = $db->query($dochazka_m); while($row_m = $ukaz_m -> fetch_assoc()) { echo ("<table class=\"table table-hover\"> <tbody> <tr> <td>Měsíc</td> <td>Odpracované h.</td> </tr> </tbody> <tr> <td>". $row_m['mesic'] ."</td> <td>".$row_m['Odpracované h.']."</td> </tr> </table>"); } } |
||
juriad Profil |
#7 · Zasláno: 27. 7. 2015, 21:06:12
Nuimi:
Dost pravděpodobně $_POST['program'] vždy existuje, jen je v tom neočekávaném případě prázdné (obsahuje prázný řetězec). Vypiš si na začátku skriptu: var_dump($_POST); |
||
Nuimi Profil |
#8 · Zasláno: 27. 7. 2015, 21:15:57
Omlouvám se, ale tuhle funkci neznám a chtěl bych poprosit jestli by jsi mi nemohl specifikovat kam presne to mam napsat
|
||
lionel messi Profil |
Nuimi:
„Omlouvám se, ale tuhle funkci neznám“ Funkcia var_dump v oficiálnej dokumentácii. „chtěl bych poprosit jestli by jsi mi nemohl specifikovat kam presne to mam napsat“ Hneď na prvý riadok uvedeného kódu. |
||
Nuimi Profil |
#10 · Zasláno: 27. 7. 2015, 21:22:12
Výběr programu
array(2) { ["program"]=> string(5) "PětP" ["mesic"]=> string(7) "Měsíc" }
Výběr měsíce array(2) { ["program"]=> string(13) "Vyber program" ["mesic"]=> string(5) "leden" }
|
||
juriad Profil |
Nuimi:
Vidíš, vždy jsou vyplněné obě možnosti, jak program, tak i mesic. Rozlišit mezi nimi musíš porovnáním s výchozí hodnorou (Vyber program a Měsíc). Další možností je, jelikož to vypadá na <select>, nastavit value="" u té výchozí <option>. Pak bude porovnávání jednodušší.
|
||
Nuimi Profil |
#12 · Zasláno: 27. 7. 2015, 21:35:59
A nějaký návrh jak na to. Ne, nejak na to prijdu, strasne moc dekuju za radu
|
||
Časová prodleva: 10 let
|
0