[PHP]Skrypt Upload

Apropo html, którego dałeś w linku

Masz:

<form enctype="multipart/form-data" action="index.php" method="POST"> [/code]

Action to plik do którego przejdziesz po kliknięciu w submit. A skoro nie masz index.php wywala ci błąd.

@up rzeczywiście, bd musiał zainstalować jakiś serwer i testować, a nie pisać z pamięci ;]

@UP to poprawie, ale pomóżcie żeby można było wrzucić plik ;/ lexus.y0.pl/up2.php

Czytałeś co napisał drobok, skrypt nie działa, bo przekierowuje cie

action="index.php"

Najlepiej pozostaw to puste albo wpisz ścieżkę do skryptu, który ma się wykonać po wrzuceniu pliku.

Poza tym masz jakiś piekielny bałagan w źródle. Kończysz

, ale go nie otwierasz, i w body ?! Trudno ogarnąć co tam się dzieje.

http://lexus.y0.pl/up.php :slight_smile: Mam prośbę :smiley: Jak dodać w tym skrypcie wszystkie rozszerzenia (aby móc wszystko wepchnąć) i gdzie jest linijka z tymi bajtami, ile można zauplodować

http://lexus.y0.pl/up.php w raru up

<?php

no i jak je niby dodać co dopisać

To ci akurat powiem bo możesz nie ogarnąć. Tam jest użyta funkcja sprawdzająca rozszerzenia. A text/plain to taki zamiennik na część z nich. Po prostu to wywal jeśli chcesz wszystko. Jednak radziłbym zmienić na php gdyż cały serwer ci tym mogą wywalić tak jak napisałem w komentarzu.

No to napisz tu co mam tam napisać żeby mi nie “zepsuli” :smiley:

Moim zdaniem wystarczy w chmod przy uploadowaniu odebrać wszystkim prawa do wykonania, a zostawić do odczytu zapisu (żeby móc pobrać ten plik).

Dodane 10.05.2011 (Wt) 20:43

Chociaż zapisu też bym odebrał, ktoś złośliwy może nadpisać nasz plik uploadując plik o tej samej nazwie. Odczyt w zupełności wystarczy.

Nie rozumiem! Odebrać prawa a w instrukcji uploadu pisze żeby ustawić na ALL czyli 777.

Po pierwsze nie 777, może to zostać zinterpretowane jako 1411, tylko ósemkowo 0777.

Po drugie instrukcje od ustawianie czegokolwiek na 0777 to samobójstwo. W każdym razie (o ile autor skryptu nie był idiotą) miał na myśli katalog do którego uploadujemy można ustawić na 0777 nie jest to bardzo niebezpieczne. Ja mówiłem o poszczególnych plikach, które wrzucamy. Idea jest taka:

Wgrywamy plik - > ustawiamy jego chmod na 400 (może odczytać tylko właściciel) -> teraz nikt z url nie może go uruchomić, ale możemy to zrobić z poziomu skryptu bo on ma do tego prawa, np. przesyłamy zmienna w tablicy $_GET

A jeśli tego nie zrobie to co się stanie.

Nie wiem o co pytasz dokładnie:

  1. Nie zabezpieczysz plików przed nieautoryzowanym wykorzystaniem przez nadanie chmod 0400, będzie można wykonać zuploadowane pliki php, nadpisywać te co masz itp, ktoś sobie może u ciebie postawić jakiś skrypt, albo zniszczyć ci ten co masz.

  2. Niezabezpieczenie skryptu przed cofaniem się w drzewie katalogu, cóż jeśli masz jakieś inne ważne pliki nie w katalogu, który zawiera pliki do ściągania każdy może ściągnąć dowolny plik z twojego serwera.