Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapisywanie plików pdf na serwerze poprzez www-data
Forum PHP.pl > Forum > Serwery WWW
agataperz
Witam,

mam bardzo specyficzny problem z serwerem apache2.

Skrypt php nie zapisuje zeskanowanych plików pdf na serwer. Natomiast pliki pdf wygenerowane przez serwery (np. wyciągi bankowe) zapisują się na serwerze.
Pliki skanowane były przez soft windowsowy jak i również przez soft skanera.

Skrypt php wygląda następująco:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"><head>
  4. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
  5. <title>tytuł</title></head><body>
  6.  
  7. <?php
  8. $plik_nazwa_tmp = $_FILES["plik1"]["tmp_name"];
  9. $plik_nazwa_oryginalna = 'agata_'.date("Y-m-d_H_i_s").'.pdf'; //$_FILES["plik1"]["name"];
  10. $plik_wielkosc = $_FILES["plik1"]["size"];
  11. $katalog='/home/agata/html/test/';
  12.  
  13. if (is_uploaded_file($plik_nazwa_tmp)) {
  14. echo "Plik <b>".$plik_nazwa_oryginalna."</b> (".$plik_wielkosc.") przesłany!";
  15. move_uploaded_file($plik_nazwa_tmp, $katalog."".$plik_nazwa_oryginalna);
  16. chmod($katalog."".$plik_nazwa_oryginalna, 0664);
  17. }
  18.  
  19. foreach(scandir($katalog) as $file)
  20. echo "".$file."<br>";
  21. ?>
  22.  
  23. <form action="test.php" method="post" enctype="multipart/form-data"><div>
  24. <input type="hidden" name="MAX_FILE_SIZE" value="120000" />
  25. <input name="plik1" type="file" />
  26. <input type="submit" value=" wyślij " />
  27. </div></form>
  28.  
  29.  
  30. </body></html>


Apache/2.4.54 (raspbijski)
PHP 7.4.33
max_file_uploads 20
post_max_size 8M

Niestety nie mam pojęcia co może być powodem.
W windows pliki posiadają te same uprawnienia
Macie Państwo jakiś pomysł co tu się stało że tak dziwnie działa?
ohm
A co z debugowaniem?
agataperz
w tym problem że debugowanie nie wyświetla błędów.

nospor
sek w tym ze chyba nie zrobilas poprawnego debugowania

Masz dwa miejsca gdzie moze sie chrzanic

1)

if (is_uploaded_file($plik_nazwa_tmp)) {

2)
move_uploaded_file($plik_nazwa_tmp, $katalog."".$plik_nazwa_oryginalna);


By sprawdzic 1 wystarczy zrobic print_r($_FILES); i tam bedzie info o bledzie jesli to tam problem

A 2 to zwykle wlaczenie wyswietlania wszystkich bledow
viking
https://www.php.net/manual/en/features.file...load.errors.php

UPLOAD_ERR_FORM_SIZE

Value: 2; The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.
nospor
I tyle w temacie
"
w tym problem że debugowanie nie wyświetla błędów.
"

wink.gif
agataperz
Dziękuję.
Co kilka główek to nie jedna smile.gif
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-2024 Invision Power Services, Inc.