Diskuze: Paginace z místního článku
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Ten "Error 500" se ti někam loguje a tam je napsané co máš špatně. Na první pohled vidím, že funkce začínající na "vrat" nic nevrací, třeba je chyba tam.
Změnil jsem to takle
function vratHardware($strana, $naStranu)
{
return Db::queryAll('SELECT * FROM servis_hw ORDER BY idhw DESC LIMIT ?, ?', ($strana - 1) * $naStranu, $naStranu);
}
function vratPocetHardware()
{
return Db::querySingle('SELECT COUNT(*) FROM servis_hw');
}
if (isset($_GET['strana']))
$strana = $_GET['strana'];
else
$strana = 1;
$naStranu = 15;
$servisHW = vratHardware($strana, $naStranu);
$stran = ceil(vratPocetHardware() / $naStranu);
a ještě toto
<table class="ui compact celled definition table">
<thead>
<th>ID</th>
<th>Datum</th>
<th>Ticket</th>
<th>S/N</th>
<th>Typ hardware</th>
<th>Závada</th>
<th>Oprava</th>
<th>Opravil</th>
<th>Cena opravy</th>
<th>-</th>
<th>-</th>
</thead>
<?php
foreach ($servisHW as $hw)
{
echo('<tbody>
<tr>
<td>' . htmlspecialchars($hw[idhw]).'</td>
<td>' . htmlspecialchars($hw[datum]).'</td>
<td>' . htmlspecialchars($hw[ticket]).'</td>
<td>' . htmlspecialchars($hw[snhw]).'</td>
<td>' . htmlspecialchars($hw[typhw]).'</td>
<td>' . htmlspecialchars($hw[zavadahw]).'</td>
<td>' . htmlspecialchars($hw[opravahw]).'</td>
<td>' . htmlspecialchars($hw[uziv_jmeno]).'</td>
<td>' . htmlspecialchars($hw[oprcenahw]).'</td>
</tr>
</tbody>
');
}
?>
</table>
<?= paginace($strana, $stran, '?strana={strana}') ?>
ale fakt nechápu co temu vadilo, jak jsem to měl napsany na poprvé.
Teďka už to funguje
Ještě bych měl dotaz jak použiju místo forearch, while?
pro forearch bych použil
$servisHW = Db::queryAll('SELECT ... ');
foreach ($servisHW as $hw){}
a pro while
$servisHW = Db::queryAll('SELECT ... ');
while ($row = $servisHW->fetch(PDO::FETCH_OBJ)) {
}
Nevím jestli je toto správně?
A je lepší použivat foreach nebo while?
Děkuji
Zobrazeno 4 zpráv z 4.