Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Dodanie NIEograniczonej liczby zdjęć do bazy mysql
ob1
post 27.06.2019, 16:12:16
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


Mam plik, który dodaje zdjęcia do bazy. Jest podzielony na zdjęcie główne, oraz "resztę" zdjęć.

Zdjęcia są małe po około 300 kb.

Problem polega na tym, że do bazy wgrywane jest maksymalnie 19 zdjęć i ani jedno zdjęcie więcej. Jak to zmienić, aby dodawać większa ilość zdjęć jednocześnie?

  1. require_once('connect.php');
  2. require_once('cmsy/connect-screen.php');
  3. $pliki = $_FILES['pliki'];
  4. $tytul =trim($_POST['tytul']);
  5. $session = md5($usr.time());
  6. $zdjecie_glowne = $_FILES['zdjecie_glowne']['name'];
  7. $zdjecie_glowne_type = $_FILES['zdjecie_glowne']['type'];
  8. $zdjecie_glowne_size = $_FILES['zdjecie_glowne']['size'];
  9. $zdjecie_glowne = uniqid(rand(), true) . '.JPEG';
  10. if (isset($_POST['submit'])) {
  11. $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
  12. if ($_FILES['zdjecie_glowne']['error'] == 0) {
  13.  
  14. $target = GW_UPLOADPATH . $zdjecie_glowne;
  15.  
  16. if ((move_uploaded_file($_FILES['zdjecie_glowne']['tmp_name'], $target)))
  17.  
  18. {
  19. $queryglowne="INSERT INTO galeria VALUES (0,'$tytul','','$zdjecie_glowne','$session','glowne')";
  20.  
  21. mysqli_query($dbc, $queryglowne);
  22. }}
  23. else '<p>Problem z przesłaniem głównego zdjęcia</p>';
  24.  
  25.  
  26. if (isset($pliki['name'])){
  27.  
  28.  
  29.  
  30.  
  31. for($i=0; $i<count($_FILES["pliki"]["name"]); $i++)
  32. {
  33. $filetmp = $_FILES["pliki"]["tmp_name"][$i];
  34. $filename =uniqid(rand(), true) . '.JPEG';
  35. $filepath = '../zdjecia_panel/'.$filename;
  36. move_uploaded_file($filetmp,$filepath);
  37.  
  38.  
  39. if (!$dbc) {
  40. die('Nie można połączyć się z bazą danych: ' . mysql_error());
  41. }
  42.  
  43. $pliki = $_FILES["pliki"]["name"][$i];
  44. $query = "INSERT INTO galeria VALUES (0,'$tytul','$filename','', '$session','reszta')"
  45.  
  46. or die("Zapytanie do niepoprawne");
  47.  
  48. mysqli_query($dbc, $query);
  49. }
  50.  
  51. echo "<script>alert('Zdjęcia zostały dodane')</script>";
  52.  
  53. }
  54. else {
  55. echo '<p class="er">Wystąpił problem przy przesyłaniu zdjęć.</p>';
  56. }
  57. mysqli_close($dbc);
  58. }
  59.  
  60.  
Go to the top of the page
+Quote Post
SmokAnalog
post 27.06.2019, 16:31:33
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Co masz w $_FILES po wysłaniu wielu plików?
Go to the top of the page
+Quote Post
ob1
post 27.06.2019, 16:42:30
Post #3





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


Efekt jest taki, że nie ma znaczenia czy wrzucam 21 zdjęć (przy wielu plikach) czy 30 lub 40 zdjęć. Wyskakuje okno "zdjęcia zostały dodane" i rzeczywiście są dodane do bazy, ale pierwsze 19 wczytanych. Gdzie można określić, aby zostały wczytane wszystkie zdjęcia, a jeżeli nie można to załóżmy maksymalnie 40 zdjęć przy jednej wysyłce? "SmokAnalog" możesz trochę jaśniej, bo niezbyt się orientuję o co się rozchodzi.

Ten post edytował ob1 27.06.2019, 17:07:38
Go to the top of the page
+Quote Post
SmokAnalog
post 27.06.2019, 17:30:19
Post #4





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Na samej górze tego pliku, co ma zapisywać zdjęcia daj:

  1. var_dump($_FILES); exit;


I powiedz co to pokazało.
Go to the top of the page
+Quote Post
ob1
post 27.06.2019, 22:30:47
Post #5





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


wrzuciłem, odpowiedź:

array(0) { }
Go to the top of the page
+Quote Post
SmokAnalog
post 27.06.2019, 22:32:10
Post #6





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Jeśli puste, to niemożliwe, że zapisuje jakiekolwiek zdjęcia (przy wyborze tych konkretnych plików).
Go to the top of the page
+Quote Post
ob1
post 27.06.2019, 22:41:13
Post #7





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


Z komunikatu na to wygląda, ale dodaje zdjęcie główne i 19 zdjęć dodatkowych / innych.

Dlaczego 19?
Go to the top of the page
+Quote Post
SmokAnalog
post 27.06.2019, 22:43:08
Post #8





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Jakieś cuda. Jakim cudem te INSERT-y się wykonują, skoro $_FILES jest puste? Źle to testujesz. Wrzuć kilka zdjęć do folderu i zawsze te same wysyłaj.
Go to the top of the page
+Quote Post
ob1
post 28.06.2019, 00:19:31
Post #9





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


Też jest to dla mnie dziwne, ale dodają się tylko pierwsze 19. Dlaczego akurat 19?
Go to the top of the page
+Quote Post
ohm
post 28.06.2019, 00:51:08
Post #10





Grupa: Zarejestrowani
Postów: 618
Pomógł: 143
Dołączył: 22.12.2010

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


w php.ini masz

  1. ; Maximum number of files that can be uploaded via a single request
  2. max_file_uploads = 20


zmien to na ile tam chcesz i powinno zaczac smigac
Go to the top of the page
+Quote Post
ob1
post 29.06.2019, 18:11:39
Post #11





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.02.2018

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


OHM dziękuję za konkretną pomoc. To było to.
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 28.03.2024 - 19:56