Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework]Problem z mysql i datą
Forum PHP.pl > Forum > PHP > Frameworki
prohol
witam

Mam problem z dodawaniem danych z formularza do bazy mysql. Mianowicie w tabeli zdefiniowane mam pola typu DATE i kozystajac z method update lub insert pola typu DATE nie sa w bazie aktualizowane. Oczywiscie dane z formularza sa w postato YYYY-MM-DD oraz przepuszczone przez Zend_Filter_StripTags(to chyba nie powinno miec znaczenie). FW nie wyrzuca bledow (PDO_Mysql) a nie wiem jak wyswietlic przetworzone zapytanie aby sprawdzic czy jest prawidlowo budowane przez FW. Ma ktos jakis pomysl co moze byc nie tak?

  1. $imie=trim($filter->filter($this->_request->getPost('imie')));
  2. //itd pozostale dane z formularza
  3. //przykladowa tablica dla update/insert
  4. $data=array('imie' => $imie,'data_dodania'=>$data_dodania');
  5. $tabela->update($data,$tabela->getAdapter()->quoteInto('id = ?', $id));


ps. czy jest mozliwosc przechwycenia wszystkich wyjatkow rzucanych przez update()? lub jakie wyjatki przechwycic aby zobaczyc czy cos jest nie tak podczas insert/update, a najlepiej to jak wyswietlic przetworzone juz zapytanie sql??
melkorm
a gdzie odbierasz
  1. $data_dodania


możesz też zrobić trochę inaczej i ładniej:
  1. $R_Row = $tabela->fetchRow( array( 'id=?'=>$id ) );
  2. $R_Row->imie = $imie;
  3. $R_Row->data_dodania = $data_dodania;
  4. $R_Row->save();


Dochodzi jedno zapytanie pobrania rekordu ale wygląda ładniej i nie trzeba robić quoteInto bo robi to za Ciebie metoda fetchRow/ fetchAll.

edit: poprawka kodu.
Pilsener
Daj wyświetlanie wszystkich błędów i wyjątków w .ini:
Kod
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1


I nie możesz datę dodania zrobić po prostu =NOW()?

Jeśli data jest wpisywana w formularzu, to powinna być zwalidowana, wyechuj sobie datę i zobaczysz, czy jest poprawna czy nie.
prohol
Nie wiedziec czemu zadzialalo "samo" z siebie.. dzieki za odpowiedzi napewno przydadza sie na przyszlosc,
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.