Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [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
adrianozo
post 24.10.2010, 20:09:21
Post #2





Grupa: Zarejestrowani
Postów: 733
Pomógł: 4
Dołączył: 11.11.2009

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


Jeżeli nie potrafisz czegoś zrobić to dlaczego się za to wziąłeś?
Nie licz na gotowca!


--------------------
Go to the top of the page
+Quote Post
luke89
post 25.10.2010, 11:01:46
Post #3





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

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


Gdybym miał wybór to bym się za to nie brał, pomożecie czy nie?

Temat do zamknięcia, na innym forum poprowadzili mnie za rękę krok po kroku.
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: 8.07.2025 - 20:34