Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][MySQL][PHP] wiele wywolan asynchronicznych kontrolera i jego procedury i dziwne wyniki w bazie
koszykarze
post
Post #1





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 10.10.2015
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Używam biblioteki uzywajacej jQuery (telerik) i mam przypadek w którym jeden po drugim wysylany jest asynchrobicznie ten sam request z innymi parametrami do kontrolera Symfony w którym wywoluję tę samą procedurę mysql robiaca zwykly insert jednego wiersza jednej tabeli.

Z testowymi danymi, tymi samymi, ta operacja za kazdym razem daje inne wyniki, tj zapis w bazie. Tzn jeśli ta operacja ma wywołać 3 razy żądanie do kontrolera i w sumie dodać 3 wiersze, to raz wstawi 3, raz 0, raz 2, 1. Bez żadnego sensu. I za każdym razem ten kontroler nie łapie żadnego exception związanego z bazą. Jest try w ktorym jest execute procedury.


  1. $em = $this->getDoctrine()->getManager()->getConnection();
  2. $query = $em->prepare("CALL document_add_user ( :document_id, :user_id)");
  3. try {
  4. $query->execute([
  5. ":document_id" => intval($request->get('document_id')),
  6. ":user_id" => intval($request->get('user_id')),
  7. ]);
  8. } catch (\Exception $e) {
  9. $msg = "MESSAGE: ".$e->getMessage();
  10. $response = new Response();
  11. $response->headers->set('Access-Control-Allow-Origin', $this->getParameter('ajax_allow_domain'));
  12. $response->send();
  13. return new JsonResponse($msg, 401);
  14. }
  15.  
  16. //$query->closeCursor();
  17.  
  18. $response = new Response();
  19. $response->headers->set('Access-Control-Allow-Origin', $this->getParameter('ajax_allow_domain'));
  20. $response->send();
  21.  
  22. return new JsonResponse("Dodano uzytkownika:.. ")
  23.  


Ten post edytował koszykarze 29.08.2018, 08:56:48
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 09:08