Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> + w nazwie pliku na uploadzie = Problem
Tabus
post
Post #1





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 22.03.2008

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


Witam mam problem z uploadem oto link do niego

http://www.upload-triosat.pl/

problem tkwi w tym że jeżeli ktoś wżuci plik z nazwą np: "D+ _OK_KEY.zip"
to w Panelu administratora nie mogę usunąc tego pliku ani zeedytować jego nazwy gdy chcę go usunąc wyskakuje mi nastepujący błąd:

Kod
Error: w bazie nie ma takiego pliku. (data/D _OK_KEY.zip)
[b]Warning[/b]:  Cannot modify header information - headers already sent by (output started at /home/uploadts/ftp/dots/index.php:111) in [b]/home/uploadts/ftp/dots/index.php[/b] on line [b]215



gdy wchodzę w edycję wyskakuje:

nazwa pliku: D _OK_KEY.zip

Kod
[/b][b]Warning[/b]:  file_get_contents(opisy/D _OK_KEY.zip.opis) [[url="http://uploadts.nazwa.pl/dots/function.file-get-contents"]function.file-get-contents[/url]]: failed to open stream: No such file or directory in [b]/home/uploadts/ftp/dots/index.php[/b] on line [b]324


po zmianie nazwy na :[/b]dsds.zip i zatwierdzeniu wyskakuje

Kod
[/b][b]Warning[/b]:  rename(data/D _OK_KEY.zip,data/dsds.zip) [[url="http://uploadts.nazwa.pl/dots/function.rename"]function.rename[/url]]: No such file or directory in [b]/home/uploadts/ftp/dots/index.php[/b] on line [b]336[/b]

[b]Warning[/b]:  Cannot modify header information - headers already sent by (output started at /home/uploadts/ftp/dots/index.php:336) in [b]/home/uploadts/ftp/dots/index.php[/b] on line [b]215


z góry dziękuje za odpowiedz i pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ebnott
post
Post #2





Grupa: Zarejestrowani
Postów: 38
Pomógł: 7
Dołączył: 2.12.2007

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


Pomysł vtunera jest prawie dobry - pod warunkiem, że rozszerzenie pliku jest zawsze takie samo.
A tu całe rozwiązanie z założeniem, że uploudujesz tylko np .jpg:

Kod
//determine filename
$filename= md5($file['name'].time());
$filename .= ".jpg";
if (isset($_POST['filename']) && $_POST['filename']!="") { $filename= md5($_POST['filename'].time()); $filename .= ".jpg"; }
$filename=basename($filename);
$filename=explode(".",basename($filename));
$ext = $filename[count($filename)-1];
unset($filename[count($filename)-1]);
$filename=join('_',$filename).'.'.$ext;



ale łatwiej i znacznie lepiej zrobić to preg_matchem, tutaj opis funkcji: (sam nie korzystalem jeszcze, dlatego mogą być błędy)
http://pl.php.net/preg_match

to będzie coś takiego:

Kod
//determine filename
if(!(preg_match("/^[a-zA-Z0-9.\\-_]/", $file['name'], $filename))) { echo "plik ma nieprawidłową nazwę!"; die; }
if (isset($_POST['filename']) && $_POST['filename']!="") { if(!(preg_match("/^[a-zA-Z0-9.\\-_]/", $_POST['filename'], $filename))) { echo "plik ma nieprawidłową nazwę!"; die; } }
$filename=basename($filename);
$filename=explode(".",basename($filename));
$ext = $filename[count($filename)-1];
unset($filename[count($filename)-1]);
$filename=join('_',$filename).'.'.$ext;


tylko jezeli plik bedzie mial zła nazwe, to caly skrypt sie zatrzyma, nie mam teraz czasu napisac tego inaczej, ale mozesz to zrobic sam, bo to nic trudnego (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Posty w temacie
- Tabus   + w nazwie pliku na uploadzie = Problem   22.03.2008, 17:33:54
- - wizu   Może przy uploadzie pliku zmieniaj nazwę pliku na ...   22.03.2008, 21:26:01
- - Tabus   no oczywiscie ze ja nie wzucam plików z + ale wzuc...   23.03.2008, 10:52:45
- - ebnott   zablokuj mozliwosc uploadowaniu plikow z "+...   23.03.2008, 15:25:03
- - Tabus   mógłbys podpowiedziać jak?? jestem w trakcie czyta...   23.03.2008, 18:16:57
- - vtuner   Po prostu, przy uploadowaniu przez system nadawaj ...   23.03.2008, 18:41:16
- - Tabus   Po prostu, przy uploadowaniu przez system nadawaj ...   23.03.2008, 19:38:31
- - wizu   O to mi chodziło... myślałem, że to będzie bardzie...   23.03.2008, 20:13:02
- - Tabus   nie jestem pewny czy to jest to. Kod//progressbar...   24.03.2008, 14:01:04
- - ebnott   Pomysł vtunera jest prawie dobry - pod warunkiem, ...   24.03.2008, 19:51:32
|- - vtuner   Cytat(ebnott @ 24.03.2008, 19:51:32 )...   24.03.2008, 21:43:44
- - Tabus   na uploadzie wzucamy pliki .zip i .rar da sie dla ...   24.03.2008, 20:00:47
- - ebnott   Kod$rozszerzenie = substr($file...   24.03.2008, 20:11:58
- - Tabus   zrobiłem tak jak napisałes działa ale po wzuceniu ...   24.03.2008, 20:45:38
- - ebnott   68901491c3a8f91fe20a52058128fe19.zip bo tak ma wys...   24.03.2008, 20:57:01
|- - ebnott   Cytat(ebnott @ 24.03.2008, 20:57:01 )...   25.03.2008, 18:25:13
- - Tabus   zmieniłem ale po wzuceniu pliku +++ ZIP.zip wyskak...   24.03.2008, 21:16:29
- - ebnott   w kodzie, ktory wkleiles nie ma ani jednej zmiany,...   24.03.2008, 21:21:43
- - Tabus   wkleiłem z normalnego bo musialem cos zle robic;/ ...   24.03.2008, 21:28:54
- - ebnott   tego nie usuwasz: if (isset($_POST['filen...   24.03.2008, 21:56:25
- - Tabus   zmienilem tak jak napisałes lecz teraz nie działa ...   24.03.2008, 22:02:55
- - ebnott   Juz miales wszystko podane na tacy. cało...   24.03.2008, 22:15:13
- - Tabus   zrobiłem jak napisałes ale teraz przy kazdej nazwi...   25.03.2008, 14:24:57
- - wlamywacz   Nie czytalem calego tematu ale ostatni post i tytu...   26.03.2008, 14:57:27
- - ebnott   Cytat(wlamywacz @ 26.03.2008, 14:57:2...   26.03.2008, 15:45:55


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 17:43