Zápis getUrl do databázy – Unexpected type object
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- sepo
- Člen | 69
Ahoj
$last_url = $this->getHttpRequest()->getUrl();
$this->context->dbmy->query('UPDATE [users] set [last_url] =%s',$last_url,'WHERE [id]=%i', $user->getId());
končí chybou SQL translate error
UPDATE `acl_users`
set `last_url` =**Unexpected type object**
WHERE `id`=1
používam nesprávny modifikátor ?
- Jan Endel
- Člen | 1016
Kdy se lidi naučí používat API, jeden z nejmocnějších nástrojů? Http\Request Http\UrlScript
- ViPEr*CZ*
- Člen | 817
Když se podíváte do dokumentace, tak zjistíte:
* @return UrlScript
*/
final public function getUrl()
Což značí, že se Vám vrací funkcí getUrl objekt instance třídy UrlScript. Proto Vám to neuloží do databáze, protože by jste tam měl posílat string a né celý objekt. Zkuste mrknout tady: https://api.nette.org/…ttp/Url.html#…
Úplně nahoře je hezký popis adresy a co co znamená. Pak už si to jen sestavit podle sebe.
Editoval ViPEr*CZ* (18. 10. 2011 13:20)
- Filip Procházka
- Moderator | 4668
$url = $httpRequest->getUrl(); // UrlScript
$url = (string)$url; // http://example.com/index.php?q=...