Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Ulpoad - bez pliku
ufoxxx
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.01.2015

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


Siema
Mam formularz z dodaniem pliku, który nie jest wymagany, jak wybieram bez pliku to wyświetla się komunikat, że plik jest na serwerze, nie wiem jak to przerobić sciana.gif
  1. <?php
  2. if(isset($_POST['update']))
  3. {
  4. include ("db_fns.php");
  5. db_connect();
  6.  
  7. $IdOdebrane = $_POST['IdOdebrane'];
  8. $TerminZalatwienia = $_POST['TerminZalatwienia'];
  9. $skan = $_POST['skan'];
  10. $pracownik = $_POST['pracownik'];
  11.  
  12. $IdOdebrane = mysql_real_escape_string($IdOdebrane);
  13. $TerminZalatwienia = mysql_real_escape_string($TerminZalatwienia);
  14. $skan = mysql_real_escape_string($skan);
  15.  
  16. $fileName = $_FILES['userfile']['name'];
  17. $tmpName = $_FILES['userfile']['tmp_name'];
  18. $fileSize = $_FILES['userfile']['size'];
  19. $fileType = $_FILES['userfile']['type'];
  20.  
  21. //$p_nazwa_zm=($IdOdebrane).".pdf";
  22. $folder="pliki/";
  23.  
  24. if (file_exists($folder.$fileName))
  25. {
  26. echo ("Plik o takiej nazwie jest już na serwerze <b><i>".$fileName."</b></i><br />");
  27. echo "<a href=kierownik.php>Wracaj ...";
  28. }
  29.  
  30. $path_file=$folder.$fileName;
  31. move_uploaded_file($tmpName, $folder.$fileName);
  32.  
  33. $sql = "UPDATE odbierzpoczte SET TerminZalatwienia = '$TerminZalatwienia', skan = '$skan', pracownik = '$pracownik', status='wysyłka', nazwa = '$path_file', typ = '$fileType', pojemnosc = '$fileSize' WHERE IdOdebrane = '$IdOdebrane'" ;
  34.  
  35. $ok = mysql_query($sql);
  36. if ($ok === false) die('nie można było dodać danych do bazy ' .mysql_error());
  37. echo "Baza została uzupełniona\n";
  38.  
  39.  
  40. mysql_close(db_connect());
  41.  
  42. }
  43.  
  44. else
  45. {
  46. ?>
Go to the top of the page
+Quote Post
Rochu
post
Post #2





Grupa: Zarejestrowani
Postów: 64
Pomógł: 14
Dołączył: 25.09.2010

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


Rozdziel trochę ten kod, w pierwszej kolejności sprawdzaj czy plik jest w ogóle przsyłany [$_FILES nie jest pusta], jeśli jest to wtedy go waliduj (sprawdź czy jest już na serwerze itd.) inaczej pomiń ten krok i przejdź od razu do zapisu danych, po prostu cała walidacja przesyłanego pliku w jednej instrukcji warunkowej
Go to the top of the page
+Quote Post
ufoxxx
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.01.2015

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


tak to ma wyglądac?
  1. if (!$_FILES) {
  2. $path_file=$folder.$fileName;
  3. move_uploaded_file($tmpName, $folder.$fileName);
  4. }
  5. else {
  6.  
  7. $fileName = $_FILES['userfile']['name'];
  8. $tmpName = $_FILES['userfile']['tmp_name'];
  9. $fileSize = $_FILES['userfile']['size'];
  10. $fileType = $_FILES['userfile']['type'];
Go to the top of the page
+Quote Post
Rochu
post
Post #4





Grupa: Zarejestrowani
Postów: 64
Pomógł: 14
Dołączył: 25.09.2010

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


  1. <?php
  2. if(isset($_POST['update']))
  3. {
  4. include ("db_fns.php");
  5. db_connect();
  6.  
  7. $IdOdebrane = $_POST['IdOdebrane'];
  8. $TerminZalatwienia = $_POST['TerminZalatwienia'];
  9. $skan = $_POST['skan'];
  10. $pracownik = $_POST['pracownik'];
  11.  
  12. $IdOdebrane = mysql_real_escape_string($IdOdebrane);
  13. $TerminZalatwienia = mysql_real_escape_string($TerminZalatwienia);
  14. $skan = mysql_real_escape_string($skan);
  15.  
  16. //domyslne wartosci dla zmiennych kiedy nie bedzie przesylany plik
  17. $path_file = $fileType = $fileSize = '';
  18.  
  19. if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
  20. $fileName = $_FILES['userfile']['name'];
  21. $tmpName = $_FILES['userfile']['tmp_name'];
  22. $fileSize = $_FILES['userfile']['size'];
  23. $fileType = $_FILES['userfile']['type'];
  24.  
  25. //$p_nazwa_zm=($IdOdebrane).".pdf";
  26. $folder="pliki/";
  27.  
  28. if (file_exists($folder.$fileName))
  29. {
  30. echo ("Plik o takiej nazwie jest już na serwerze <b><i>".$fileName."</b></i><br />");
  31. echo "<a href=kierownik.php>Wracaj ...";
  32. }
  33.  
  34. $path_file=$folder.$fileName;
  35. move_uploaded_file($tmpName, $folder.$fileName);
  36.  
  37. }
  38.  
  39. $sql = "UPDATE odbierzpoczte SET TerminZalatwienia = '$TerminZalatwienia', skan = '$skan', pracownik = '$pracownik', status='wysyłka', nazwa = '$path_file', typ = '$fileType', pojemnosc = '$fileSize' WHERE IdOdebrane = '$IdOdebrane'" ;
  40.  
  41. $ok = mysql_query($sql);
  42. if ($ok === false) die('nie można było dodać danych do bazy ' .mysql_error());
  43. echo "Baza została uzupełniona\n";
  44.  
  45.  
  46. mysql_close(db_connect());
  47.  
  48. }
  49.  
  50. else
  51. {
  52. ?>
Go to the top of the page
+Quote Post
ufoxxx
post
Post #5





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.01.2015

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


Dzięki specool.gif
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 Aktualny czas: 19.08.2025 - 11:50