Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Dlaczego mogę zapisać tylko 1001 rekordów?
Forum PHP.pl > Forum > Przedszkole
miccom
Cześć.
mam taką funkcję:

  1. public function saveData()
  2. {
  3. $mapData = $this -> path -> post('mapData');
  4. if ( ! is_array($mapData)) exit();
  5. $this -> db -> exec('TRUNCATE `map`');
  6.  
  7. foreach ($mapData as $key => $row)
  8. {
  9. $coords = explode(',', $key);
  10. if (count($coords) != 2) continue;
  11. if ((int) $row == 0) $row = 1;
  12. $this -> db -> exec('INSERT INTO `map` (`x`, `y`, `fieldType`) VALUES (' . (int)$coords[0] . ',' . (int)$coords[1] . ',' . (int)$row . ' )');
  13. }
  14. echo json_encode(true);
  15. }


Po wykonaniu takiego zadania i zleceniu np. dodanie 5 tys. rekordów- zapisuje się do bazy danych tylko 1001 rekordów.

Co mnie blokuje przed dodawaniem większej ilości rekordów?
Pomożecie?
trueblue
1. Zlecenia wykonania, czyli jak? Jest to zadanie wykonywane cron'em? Może masz ograniczenie czasowe, choć 1000 rekordów powinno dodać się błyskawicznie.
2. Sprawdź co się dzieje w linii nr 10.
miccom
Przesyłam POSTem dane json, w funkcji rozbijam to explodem i ... dodaje się ale tylko 10001 rekordów, powinno być 15,5 tys. rekordów
viking
O ile oczywiście nie masz tam żadnego błędu to przychodzi mi na myśl limit w https://suhosin.org/stories/configuration.html albo inny w PHP.
miccom
Tak, w php.ini miałem ustawione max_input_vars na 1000, zmieniłem na 20000 i już nic nie zakrzaczy smile.gif
viking
To jeśli faktycznie przesyłasz tyle zmiennych to masz coś ostro nie tak w kodzie.
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.