Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Modyfikacja uploadora plików
luke89
post 24.10.2010, 19:42:10
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.10.2010

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


Witam zostało mi zlecone przeprowadzenie poniższych modyfikacji na skrypcie do uploadowania plików:
- fizyczne usunięcie plików z serwera (obecnie wyrzucana jest informacja o nich z bazy, jednak pliki dalej istnieją na serwerze - funkcja unlink())
- msgbox z zapytaniem czy na pewno chcesz usunąć zaznaczony plik
- blokowanie uploadowania tak samo nazwanych plików

Nie bardzo umiem sobie z tym poradzić bo jestem zielony z phpa, dlatego prosiłbym o pomoc w tej drobnej korekcie:)
1.
  1. <?php
  2. require_once('funkcje_pliki.php');
  3.  
  4. $usun_mnie = $_POST['usun_mnie'];
  5. $prawid_uzyt = $_SESSION['prawid_uzyt'];
  6.  
  7. tworz_naglowek_html('<center>Usuwanie Pliku</center>');
  8. sprawdz_prawid_uzyt();
  9. if (!wypelniony($_POST)) {
  10. echo '<p>Nie wybrane zostały żadne Pliki do usunięcia.<br/>
  11. Proszę spróbować ponownie.</p>';
  12. wyswietl_menu_uzyt();
  13. tworz_stopke_html();
  14. } else {
  15. if (count($usun_mnie) > 0) {
  16. foreach($usun_mnie as $plik) {
  17. if (usun_plik($prawid_uzyt, $plik)) {
  18. unlink ('pliki/'.$_GET['plik']);
  19. echo 'Usunięto '.htmlspecialchars($plik).'.<br />';
  20. } else {
  21. echo 'Nie udało się usunięcie '.htmlspecialchars($plik).'.<br />';
  22. }
  23. }
  24. } else {
  25. echo 'Nie wybrano żadnych Linkow do usunięcia';
  26. }
  27. }
  28.  
  29. if ($tablica_plik = pobierz_plik_uzyt($prawid_uzyt)) {
  30. wyswietl_plik_uzyt($tablica_plik);
  31. }
  32.  
  33. wyswietl_menu_uzyt();
  34. tworz_stopke_html();
  35. ?>

2.
  1. function wyswietl_menu_uzyt() {
  2.  
  3.  
  4.  
  5. ?>
  6. <body bgcolor=#000000 text=#ffffff>
  7. <hr />
  8. <a href="dodaj_plik_formularz.php">Dodaj plik</a></br>
  9.  
  10. <?php
  11.  
  12.  
  13. global $tabela_plik;
  14. if($tabela_plik == true) {
  15. echo "<a href=\"#\" onClick=\"tabela_plik.submit()\";>Usuń plik</a>";
  16. } else {
  17. echo "<span style=\"color: #ffffff\">Usuń plik</span>";
  18. }
  19. ?></br>
  20. <hr>
  21. <a href="czlonek.php">Strona usera</a></br>
  22. <a href="zmiana_hasla_formularz.php">Zmień hasło</a></br>
  23. <a href="wylog.php">Wyloguj</a></br>
  24.  
  25. <hr />
  26. </body>
  27. <?php
  28. }

3.
  1. <?php
  2.  
  3.  
  4.  
  5. require_once('funkcje_pliki.php');
  6.  
  7. $max_rozmiar = 1024*1024;
  8. $nowy_plik = $_FILES['plik']['name'];
  9.  
  10.  
  11.  
  12. tworz_naglowek_html('<center>Dodawanie Plikow</center>');
  13.  
  14. try {
  15. sprawdz_prawid_uzyt();
  16. if (!wypelniony($_POST)) {
  17. throw new Exception('Formularz wypełniony niewłaściwie. Proszę spróbować ponownie.');
  18. }
  19.  
  20.  
  21. if (is_uploaded_file($_FILES['plik']['tmp_name'])) {
  22. if ($_FILES['plik']['size'] > $max_rozmiar) {
  23. echo 'Błąd! Plik jest za duży!';
  24. } else {
  25. echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name'];
  26. echo '<br/>';
  27. if (isset($_FILES['plik']['type'])) {
  28. echo 'Typ: '.$_FILES['plik']['type'].'<br/>';
  29. }
  30. move_uploaded_file($_FILES['plik']['tmp_name'],
  31. 'pliki/'.$_FILES['plik']['name']);
  32.  
  33.  
  34. }
  35. } else {
  36. echo 'Błąd przy przesyłaniu danych!';
  37. }
  38.  
  39.  
  40.  
  41. dodaj_plik($nowy_plik);
  42. echo 'plik dodano do bazy';
  43.  
  44. $prawid_uzyt = $_SESSION['prawid_uzyt'];
  45.  
  46. if ($tablica_plik = pobierz_plik_uzyt($_SESSION['prawid_uzyt'])) {
  47. wyswietl_plik_uzyt($tablica_plik);
  48. }
  49. }
  50. catch (Exception $e) {
  51. echo $e->getMessage();
  52. }
  53. wyswietl_menu_uzyt();
  54. tworz_stopke_html();
  55. ?>


Z góry dziękuję za pomoc smile.gif
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:38