Problem pri ukladani dat v ajaxom prekreslenom replikatore
- w3r0
- Člen | 4
***Situacia je takato: ***
Mam formular nad ktorym je snippet ktory redrawnem ked potrebujem nastavit ine
defaults hodnoty, vo formulary je Kdyby replikator, ktory mi replikuje
„contacts“ daneho formulara. Cely formular odosielam Ajaxom. Vsetko mi
funguje do doby ked chcem ulozit data z replikovanej casti formulara, contacts.
Data sa dostanu do metody updateContact() kde vsetky povodne zmazem, co mi
zbehne a nasledne zavolam metody insertNewContact() a tam sa snazim vsetky
kontakty na novo vlozit do databazy, problem je v tom ze mi to nezbehne, ziadny
error ani v PHP logoch ani v MySQL logoch a samozrejme ani Nette mi nic
nenapise. Metoda insertNewContact funguje ked niekde natvrdo poslem do nej pole
z dajme tomu presentera. Tento kod nefunguje iba ked je volany vyssie popisanym
sposobom.
Vid kod.
Tovarnicka
$values = $form->getValues(true);
if (is_numeric($candidateId)) {
$this->candidateRepository->updateByIdAndCustomer($candidateId, $values['profile'], $customerId);
$this->candidateContactRepository->updateContact($candidateId, $values['contact']);
}
Repository
public function updateContact($candidateId, $data)
{
$this->getTable()
->where('candidate_id', $candidateId)
->delete();
$this->insertNewContact($candidateId, $data);
}
public function insertNewContact($candidateId, $contacts)
{
if (isSet($contacts)) {
foreach ($contacts as $contact) {
$data = array_merge(['candidate_id' => $candidateId], $contact);
try {
$this->getTable()->insert($data);
} catch (\PDOException $e) {
throwException($e);
}
}
}
}
Nejake rady, tipy, napady ?