Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 8. diel - Jednoduchý redakčný systém v Nette - Dokončenie administrácia

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Jan Říha
Člen
Avatar
Jan Říha:3.2.2017 22:33

PHP Version 5.6.29-0+deb8u1,
innodb_version 5.7.17,
Snažil jsem se nic neměnit.
Google pro výše uvedenou chybu doporučuje: sql_mode nemá být strict.
Nevím, zda-li to s tím souvisí, ale phpinfo() říká: session.use_stric­t_mode Off Off.
Když v ArticlePresen­ter.php odstraním řádek
$form->addHidden('ar­ticle_id')->addRule(Form::IN­TEGER);
chyba: Undefined property: Nette\Utils\A­rrayHash::$ar­ticle_id, která ukazuje také do ArticleManager.php metody public function saveArticle($ar­ticle) na řádek if (!$article[sel­f::COLUMN_ID])
Když do metody saveArticle($ar­ticle) vložím pouze:
$this->database->table(self::TAB­LE_NAME)->insert($article);
pak se článek uloží.

Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Jan Říha
Jindřich Máca:4.2.2017 18:16

To, co popisuješ, se všechno chová tak, jak by mělo. Pro tu chybu je asi tady opravdu nutné vypnout striktní mód databáze tak, jak napovídá Google. Ovšem session.use_stric­t_mode s tím nemá nic společného, to je nastavení módu pro PHP Sessions. ;)

Avatar
Jan Říha
Člen
Avatar
Jan Říha:4.2.2017 21:02
  1. odstranil jsem: ->addRule(Form::IN­TEGER),
  2. na serveru jsem vytvořil soubor: /etc/mysql/con­f.d/disable_stric­t_mode.cnf
  3. do souboru jsem zapsal:

[mysqld]
sql_mode=IGNO­RE_SPACE,NO_ZE­RO_IN_DATE,NO_ZE­RO_DATE,ERROR_FOR_DI­VISION_BY_ZERO,NO_A­UTO_CREATE_USER,NO_EN­GINE_SUBSTITU­TION

  1. restartoval jsem mysql: service mysql restart

a funguje to.
Dík za odpovědi.

Avatar
Karl
Člen
Avatar
Karl:15.2.2017 10:55

Jindro a jak Ty máš nastavené my.ini ?

mám WAMP s PHP 7.0.10 a MySQL 5.7.14
když nastavím v my.ini sql-mode="" tak to funguje
když to nechám default, tedy zakomentuji v my.ini ;sql-mode="" (zakomentován) tak to nefunguje

jinak toto mi nepomohlo sql-mode=„NO_AUTO_VA­LUE_ON_ZERO“ – chybu to házelo dále

Kárl

Avatar
Karl
Člen
Avatar
Odpovedá na Karl
Karl:15.2.2017 11:13

a pokud to udělám jako p.Říha, (tedy sql_mode=IGNO­RE_SPACE,NO_ZE­RO_IN_DATE,NO_ZE­RO_DATE,ERROR_FOR_DI­VISION_BY_ZERO,NO_A­UTO_CREATE_USER,NO_EN­GINE_SUBSTITU­TION)

tak mi to vyhodí chybu:

Integrity constraint violation: 1048 Column 'product_id' cannot be null

Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Karl
Jindřich Máca:15.2.2017 19:39

Já to mám obecně trochu jinak, protože používám Linux. Každopádně mám klasické php.ini a zde jednoduše nastavené:

sql.safe_mode = Off

Více informací - http://php.net/…ini.core.php#… ;)

Nicméně, když jsi použil řešení od Jan Říha, tak to pravděpodobně fungovalo, ale máš tam potom ještě jinou chybu a to nejspíše v chybějícím ID. :)

Avatar
Karl
Člen
Avatar
Karl:15.2.2017 20:49

Nicméně mě tuto chybu háže každý insert v celém projektu Nette Eshop - stažen zip z posledního dílu s nahrazením Nette za 2.4

háže mi to jak localhost tak i na hostingu (Savana)
a jelikož to druhým funguje, musí to být někde v nastavení, aby MySQL nevadilo, že zadávám ´´ a místo toho zafungoval autoincrement

snad kvůli tomu nebudu přepisovat všechny inserty, navíc nevím jestli to pak neudělá paseku při editaci záznamu, tam se přeci id zase musí předávat

respektive nastavení v my.ini (překvapuje mě že ho nemáš) mě to s tímto nastavením
sql-mode="" funguje, jenom nevím, co jsem tím ještě ovlivnil

ještě podotknu, že to nastavení, kdy mi to vyhazuje chybu je default nastavení nejnovějšího WAMPu

Avatar
Vakos
Tvůrce
Avatar
Vakos:21.2.2017 18:38

Chci se zeptat. Jména latte šablonů mohou být pojmenovány jakkoli? Vše mám dělané podle článků a to nastává, problém nastává, když si chci přidat další latte šablonu, začne to ihned zlobit. Když si vytvořím novou šablonu, tak nastavím práva v config a pak už jej začínám používat, bohužel to vyhodí chybu.

V čem může být problém?

Odpovedať
"Jediný způsob, jak dělat skvělou práci, je milovat to, co děláte. Pokud jste to ještě nenašli, hledejte dál. Ne...
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Vakos
Jindřich Máca:21.2.2017 19:45

Nějak nechápu, jak to myslíš. :( Jména Latte šablon mají nějaké konvence vůči akcím jednotlivých presenterů. Práva v konfiguračním souboru, pokud tedy myslíš statické ACL, vůbec nesouvisí se šablonami, ale právě s presentery. A vůbec, vhodné by bylo sem poslat tu konkrétní chybu, kterou Ti to píše. Takhle z toho nikdo nemůže být moc moudrý. :)

Avatar
Vakos
Tvůrce
Avatar
Odpovedá na Jindřich Máca
Vakos:21.2.2017 19:55

Chápu tedy že mají nějaké konvence, jak si tedy mohu vytvořit druhý soubor, kde například budu taktéž vypisovat články?

Odpovedať
"Jediný způsob, jak dělat skvělou práci, je milovat to, co děláte. Pokud jste to ještě nenašli, hledejte dál. Ne...
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 60.