getParam nevracia vždy hodnotu
- GAMELASTER
- Člen | 6
Dobrý deň,
Máme form pre ukladanie HTML textu do súboru pre daného uživatela. Všetko fungovalo dobre, dokým sme manuálne z databázy nevymazali 3 uživatelov (cez PMA). Keď sme po vymazaní tých uživatelov vytvorili nového, IDčka v databáze boli preskočené (30, 34). To by nevadilo, no form pre ukladanie HTML textu nefunguje. Na získanie uživatelovho ID používame getParam, ktorý funguje pri forme (u toho nového), no keď dáme upraviť uživatelové HTML, vypíše, že nebolo ID zadané (getParam vracia nulovú hodnotu), pritom POST data odošle. Na starých uživateloch to funguje dobre.
Ako to opraviť?
Vďaka
- japlavaren
- Člen | 404
Ahoj,
mohol by si sem dať kód, ktorý ti nefunguje, pretože z toho, čo píšeš, nechápem vobec nič.
- GAMELASTER
- Člen | 6
public function renderTemplate()
{
$tpl = $this->template;
$campaignServices = $this->context->getService('campaigns');
if (preg_match("/^[0-9]{1,5}$/", $this->getParam('idc'))) {
$campaignData = $campaignServices->getSelectedCampaign($this->getParam('idc'));
$tpl->campaign_id = $this->getParam('idc');
$tpl->predmet = $campaignData->predmet;
} else {
$this->flashMessage($this->t('Campaign.Lg98yZ'), "alert alert-warning");
$this->redirect("dump");
}
}
Pripomínam, že getParam po odoslaní formu všade vracia nulovú hodnotu.
- japlavaren
- Člen | 404
Pekný humus kód, ale to nebudem riešiť.
Máš ten idc v query stringu url? (v adrese). Pretože getParam() príjma len GET dáta a ty tu pletieš nejaký post.
Editoval japlavaren (29. 11. 2014 17:03)
- GAMELASTER
- Člen | 6
No, humus kód to je, pretože som ho nerobil ja, a to je ten problém. K téme, pri upravovaní tam je, ale po upravení to v adrese už nieje, ale hovorím, pred vymazaním všetky fungujú dobre. A ak si správne pamätám, cez getParam sa v tomto skripte berú aj vecí z POSTu
- japlavaren
- Člen | 404
Ak sa bavíme o štandartnej implementácii getParam() tak to berie len get parametre (post berie len ak sa jedná o ajax)
- GAMELASTER
- Člen | 6
Je to dosť čudné, pretože funkcia getParam sa nikde ako v nette nedefinuje, a ešte viac zaujimavejšie je to že to zrazu prestalo fungovať, pritom to nikto neupravoval :/ .
- GAMELASTER
- Člen | 6
Áno presne túto funkciu to využíva, a nikde inde podobnú funkciu som nenašiel, takže to využíva túto.
- GAMELASTER
- Člen | 6
No, to je práve to čudné, lebo to GETu by sa HTML dlhý kod asi moc nehodil, + keď zruším podmienku, tak to vypíše že HTML neobsahuje linky, aj keď tam link je, po vypísaní je tiež nulová hodnota… O_o