Jeden záznam – zbytečný COUNT a FOREACH?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Duch.Veliky
- Člen | 68
Zdravím,
mám dva dotazy. Řekněme, že chci načíst jednu konkrétní pobočku a vím, že výsledek bude buď že je jedna nebo že není žádná. Tzn zavolám:
<?php
$pobocky = $this->database->table("pobocky")->where("url", $kod);
?>
A otázka č. 1 je tedy je, není trochu složité ověřovat jestli se vrátil ten jeden záznam přes COUNT, což vyvolá další SQL dotaz?
<?php
if ($pobocky->count("recid") == 1) {
?>
A otázka č. 2, jak vypsat nejsnadněji proměnné ze zavolaného dotazu?
defaultně to dělám přes:
{foreach $pobocky as $pobocka}
ale když vím, že je to jen jeden záznam, tak je zbytečné to celé volat do foreach, ne? Klasicky v PHP jsem to řešil přes
<?php
$zaznam = mysql_fetch_array($result);
?>
a když jich bylo víc, tak teprve
<?php
while ($zaznam = mysql_fetch_array($result)) {
..
}
?>
Editoval Duch.Veliky (27. 8. 2014 18:24)
- David Matějka
- Moderator | 6445
$pobocka = $this->database->table("pobocky")->where("url", $kod)->fetch();
vrati bud radek nebo FALSE