Poslao: 08 Feb 2010 18:53
|
offline
- Kole888
- Građanin
- Pridružio: 20 Jan 2010
- Poruke: 142
- Gde živiš: Beograd
|
Pravim sajt za uploadovanje.
Napravio sam ovo:
Upload.php
<?php
$target = "upload/";
$target = $target . basename( $_FILES['uploaded']['name']) ;
$ok=1;
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
}
else {
echo "Sorry, there was a problem uploading your file.";
}
?>
I napravio sa formu:
<form enctype="multipart/form-data" action="upload.php" method="POST">
<input name="uploaded" type="file" />
<input type="submit" value="Upload" />
</form>
Sve sljaka ok ali imam problem.
E sad kako da napravim limit na da ne moze neko da uploaduje stvar od 100mb nego samo od 15mb.
Kako da na kraju uploadovanja napise adresu njegovog fajla npr. imesajta.com/upload/njegov fajl
Hvala vam unapred!
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 08 Feb 2010 19:38
|
offline
- MSMarkoN
- Ugledni građanin
- Pridružio: 15 Maj 2006
- Poruke: 333
- Gde živiš: Babušnica
|
U funkciji imas dva parametra:
1. Lokacija ucitanog fajla
2. Destinacija fajla koji si upload-ovao na server/folder
http://php.net/manual/en/function.move-uploaded-file.php
Pogledaj sta je u "tvom" primeru destinacija i kako joj se dodeljuje ime i shvatices kako da dobijes putanju.
Za velicinu prouci funkciju filesize (php manual)
|
|
|
|
Poslao: 08 Feb 2010 20:22
|
offline
- milos.z
- Građanin
- Pridružio: 08 Jan 2010
- Poruke: 101
|
filesize je za velicinu lokalnog fajla, treba da koristi $_FILES['uploaded']['size'] sto ce ti dati velicinu fajla u bajtovima, pa sad ti vidi koliko ces da dozvolis da uploaduje.
evo ti par linkova koje bih ti preporucio da prelistas:
php.net/manual/en/features.file-upload.php
w3schools.com/php/php_file_upload.asp
takodje da napomenem da ako fajlove cuvas u direktorijum i kasnije dajes korisniku direktnu putanju do fajla, da OBAVEZNO vodis racuna koje ekstenzije dozvoljavas da budu uploadovane.
takodje bi trebalo da vodis racuna o podudaranju imena fajlova. npr neko kaci slika.jpg, a taj fajl vec postoji.
dosta problema bi ti resilo da fajlove upisujes u bazu. pogledaj ovaj link:
php-mysql-tutorial.com/wikis/php-tutori.....g-php.aspx
|
|
|
|
Poslao: 08 Feb 2010 20:44
|
offline
- Kole888
- Građanin
- Pridružio: 20 Jan 2010
- Poruke: 142
- Gde živiš: Beograd
|
Ljudi hvala vam na linkovima i objasnjenjima.Zana li neko zasto mi server kada uploadujem nesto postavi ovo:
Notice: Undefined index: uploadedfile in /www/zxq.net/w/w/w/www3/htdocs/upload.php on line 8 The file has been uploaded
To izbacuje uvek ne znam zasto.
I jos nesto ne mogu da nadjem ni na jedni linku da nadjem ono za put fajla koji je uploadovan imesajta.com/upload/njegov
|
|
|
|
Poslao: 08 Feb 2010 21:12
|
offline
- milos.z
- Građanin
- Pridružio: 08 Jan 2010
- Poruke: 101
|
ispisuje ti gresku jer svugde koristis $_FILES['uploaded'] a u liniji:
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded"; koristis $_FILES['uploadedfile']
a odgovor na drugo pitanje...
link se sastoji od: sajt + putanja upload direktorijuma + ime fajla
sajt valjda znas
putanja upload direktorijuma ($target = "upload/"; )
ime fajla je u promenljivoj: $_FILES['uploaded']['name']
spoji ta tri stringa i imas putanju do fajla ("http://imesajta.com/upload/".$_FILES['uploaded']['name'])
|
|
|
|
|
Poslao: 09 Feb 2010 02:49
|
offline
- Rastafarii
- Moderator foruma
- Pridružio: 22 Mar 2006
- Poruke: 3747
- Gde živiš: 127.0.0.1
|
Kole888 ::E sad kako da napravim limit na da ne moze neko da uploaduje stvar od 100mb nego samo od 15mb.
PHP ima limit u php.ini vezan za velicinu uploadovanog fajla (max_upload_size) koji je ispod 10 MB (ne secam se tacno, uvek to promenim odmah).
To podesavanje mozes da menjas samo na localhostu, VPS-u i dedicated serveru.
|
|
|
|
Poslao: 09 Feb 2010 12:05
|
offline
- Kole888
- Građanin
- Pridružio: 20 Jan 2010
- Poruke: 142
- Gde živiš: Beograd
|
Milose kako da napravim da posle uploadovanja sajt prikaze
velicinu fajla
|
|
|
|
Poslao: 09 Feb 2010 12:53
|
offline
- Rastafarii
- Moderator foruma
- Pridružio: 22 Mar 2006
- Poruke: 3747
- Gde živiš: 127.0.0.1
|
Za to postoji funkcija filesize()
Samo sto ona vraca velicinu u bajtovima, ako ti treba B/KB/MB/GB velicina, onda moras da pises novu funkciju:
function roundsize($file) {
$size = filesize($file);
if ($size <= 1024) {
$size .= " b";
}
elseif ($size <= 1048575) {
$size = round($size / 1024,2);
$size .= " KiB";
}
elseif ($size <= 1073741823) {
$size = round($size / 1048576,2);
$size .= " MiB";
}
else {
$size = round($size = $size / 1073741824,2);
$size .= " GiB";
}
return $size;
}
|
|
|
|
Poslao: 11 Feb 2010 23:29
|
offline
- Kole888
- Građanin
- Pridružio: 20 Jan 2010
- Poruke: 142
- Gde živiš: Beograd
|
Napisano: 09 Feb 2010 20:55
Hvala puno
Dopuna: 11 Feb 2010 23:29
Kako da napravim da moze da se klikne na ovo???
Treba mi hitno!
echo "Adresa:
http://imesajta/file/".basename("http://imesajta/file/.$_FILES['uploaded']['name'])."";
|
|
|
|