• 26 odgovora
  • 12.424 pregleda
Kako da posetioci sajta upload-uju neki fajl 24.11.2005. u 11:29 · pre 254 meseci #1
Kako bi posetioci sajta mogli da upload-uju neki fajl ....

Naravno kreiram sve potrebne stvari za to, ali me zanima kod koji
bi omogucio da se sa racunara posetioca fajl kopira u neki folder
sajta na serveru.
Potpis
Nisam ti pric'o !?
Re: Kako da posetioci sajta upload-uju neki fajl 24.11.2005. u 12:10 · pre 254 meseci #3
Ja imam gomilu tih upload skripti, koristim EasyPHP 1.8, i nijedna ne radi kako treba, sve mi uploaduju fajl u Apache-ov folder, a ne tamo gde ja kazem. Moj ortak koristi isto EasyPHP 1.8, i iste skripte kod njega rade :(
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: Kako da posetioci sajta upload-uju neki fajl 25.11.2005. u 11:50 · pre 254 meseci #4
Mogao bi malo detaljnije da pojasniš ovo:
Citat:
Naravno kreiram sve potrebne stvari za to


jer ne moze se zakljuciti da li sve te "potrebne stvari" imaju gresku ili manjka koda. Ovako mozemo samo naslepo pricati.

Kada se file upload-uje ide u temp folder Apach servera i ti moras dodatno da ga prekopiras gde zelis.

Code:

//slika smeštena u temp folder na Apach-u
$temp_slika=$_FILES['slika']['tmp_name'];

//lokacija gde zelis prekopirati sliku
$lokacija="folder_gde_zelim_smestiti_sliku/ime_pod_kojim_zelim_smestiti_sliku";

//kopiranje slike iz temp folder-a u željeni folder
move_uploaded_file($temp_slika, $lokacija);
Re: Kako da posetioci sajta upload-uju neki fajl 25.11.2005. u 23:08 · pre 254 meseci #5
Sve potrebne stvari su vezane za HTML ... znaci polje gde ce se odredjivati putanja, forma, buttons i sve sto je potrebno za to ... samo me zanima sta da
upisem u PHP skripti na koju cu uputiti formu?

Hvala ti za ovaj kod, mislim da mi je samo toliko i trebalo ... :)

[Ovu poruku je menjao zero_83 dana 26.11.2005. u 00:13 GMT+1]
Potpis
Nisam ti pric'o !?
Re: Kako da posetioci sajta upload-uju neki fajl 25.11.2005. u 23:20 · pre 254 meseci #6
Citat:
Ja imam gomilu tih upload skripti, koristim EasyPHP 1.8, i nijedna ne radi kako treba, sve mi uploaduju fajl u Apache-ov folder, a ne tamo gde ja kazem. Moj ortak koristi isto EasyPHP 1.8, i iste skripte kod njega rade :(


ja koristim easyphp 1.8 i sve lepo radi. aj posalji skripte koje ti ne rade da proverim.
Potpis
http://www.vuknikolic.com
http://www.klopaj.com
Re: Kako da posetioci sajta upload-uju neki fajl 26.11.2005. u 12:02 · pre 254 meseci #7
Ovu nisam odavno koristio, ali znam da nije radila. Ne bi me cudilo da kod tebe radi, jer, kao sto rekoh, potpuno isto konfigurisan EasyPHP (tacnije nije nista dirano) i kod mene i kod ortaka, samo sto kod mene ne radi, kod njega radi...

(attach)
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: Kako da posetioci sajta upload-uju neki fajl 26.11.2005. u 12:43 · pre 254 meseci #8
ihti Uploader -> Kod mene radi ovaj Uploader samo jako je los sto se tice ogranicenja fajlova!!!


Ovako nece da radi !!!

$path = "/upload/"; // path do direktorija gdje ce se uploadovati fajlovi (na pocetak i kraj staviti / )

$path = "upload/"; // Ovako ce da radi bez / na pocetku iako doticni naglasio da treba ( samo ma linux-u ako je neophodno mada i na linuxu netreba doticna crta)!!!

Potpis
Sto mozes danas ne ostavljaj za sutra!
Re: Kako da posetioci sajta upload-uju neki fajl 26.11.2005. u 15:52 · pre 254 meseci #9
Ubacio sam upload.php u /www/ folder (root servera) i napravio folder "upload", podesio skriptu ovako:
Code:

$broj_polja = "1"; // broj polja za upload fajlova
$path = "upload/"; // path do direktorija gdje ce se uploadovati fajlovi (na pocetak i kraj staviti / )


Sada kad uploadujem fajl dobijam redirektuje me na "http://localhost/<br%20/>...>59</b><br%20/>" i dobijam sledecu poruku od servera (sto je i logicno):
Code:
Forbidden
You don't have permission to access /<br /><b>Notice</b>: Undefined variable: PHP_SELF in <b>c:/program files/easyphp1-7/www/upload.php</b> on line <b>59</b><br /> on this server.


E sad, pitanje je zasto me uopste redirektuje na neku tamo stranu?
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: Kako da posetioci sajta upload-uju neki fajl 26.11.2005. u 17:55 · pre 254 meseci #10
recimo ovaj kod:
----------------

<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.

$uploaddir = 'direktorijum upload foldera';
$uploadfile = $uploaddir . basename($_FILES ['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES ['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}

echo 'Here is some more debugging info:';
print_r($_FILES );

print "</pre>";

?>

izbacuje sledecu gresku:
-----------------------

Warning: Unable to create '/proba/Microphone%2020.gif': No such file or directory in c:\apache\htdocs\proba\index.php on line 9

Warning: Unable to move 'C:\WINDOWS\php16C.tmp' to '/proba/Microphone%2020.gif' in c:\apache\htdocs\proba\index.php on line 9
Possible file upload attack!
Here is some more debugging info:Array
(
[userfile] => Array
(
[name] => Microphone%2020.gif
[type] => image/gif
[tmp_name] => C:\WINDOWS\php16C.tmp
[size] => 6664
)

)

zanima me samo, kada radim na localhost-u, da li moram da putanu direktorijuma odredjujem sa kosom crtom na pocetku, recimo "/localhost/direktorijum/" ili mu kosa crta i localhost uopste ne trebaju, recimo "direktorijum", ili pak "/direktorijum/" ili je sve jedno... ?????

malo me buni i 'tmp_name', da li ja treba da odredim putanju do temp direktorijuma na apache-ovom serveru ili to sam kod radi ... ???
Potpis
Nisam ti pric'o !?
Re: Kako da posetioci sajta upload-uju neki fajl 27.11.2005. u 00:32 · pre 254 meseci #11
@JaHvram
You don't have permission to access -> Prebacuje te zato sto nemas dozvolu za pristup !~!!

folder upload napravi u direktorijum gde se nalazi scripta upload.php !!

Ako je folder izavan direktorijuma upload.php onda ides ovako

../upload/
../../uplload/
itd...


zero_83


Kod tebe je problem sto nisi podesi dobro upload direktorijum !!!
Potpis
Sto mozes danas ne ostavljaj za sutra!
Re: Kako da posetioci sajta upload-uju neki fajl 27.11.2005. u 18:44 · pre 254 meseci #13
opet uopšten pojam :
Citat:
$uploaddir = 'direktorijum upload foldera';


Zašto brate ne napišeš lepo:
Code:
$uploaddir = "/upload/";


Ako sam te razumeo kako treba ti imaš direktorijum "upload" u istom direktorijumu gde ti je i upload.php skripta. u tom slučaju izbaci prvi slash:

Code:
$uploaddir = "upload/";



P.S.
Sad videh ovo:
Citat:
in c:\apache\htdocs\proba\index.php on line 9

a ti rece da je skripta upload.php?

Re: Kako da posetioci sajta upload-uju neki fajl 28.11.2005. u 11:18 · pre 254 meseci #14
I ja imam sličan problem, ovo je dio koda :

<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="524288">
<fieldset><legend>Ispuni formicu da bi mogao uplodati slikicu!</legend>
<p><b>File:</b> <input type="file" name="upload" /></p>
<p><b>Description:</b> <textarea name="description" cols="40" rows="5"></textarea></p>
</fieldset>
<div align="center"><input type="submit" name="dodaj" value="dodaj" /></div>
</form>
<?
if (isset($_POST['dodaj'])) {
require_once('connect.inc.php');
function escape_data ($data) {
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string(trim($data), $dbc);
}
//kraj escape funkcije
if (!empty($_POST['description'])) {
$d = escape_data($_POST['description']);
}else{
$d = ' ';
}
//dodavanje u bazu
$query = "INSERT INTO uploads (file_name, file_type, description, upload_date) VALUES ('{$_FILES['upload']['name']}';
'{$_FILES['upload']['size']}', '{$_FILES['upload']['type']}', '$d', NOW())";
$result= @mysql_query($query);
if($result) {
$extension = explode ('.', $_FILES['upload']['name']);
$uid = mysql_insert_id();
$filename = $uid . '.' .
$extension[1];
//kopira file na novu lokaciju na serveru
if(move_uploaded_file($_FILES['upload']['tmp_name'], "../uploads/$filename")) {
echo '<p>Uplodali smo slikicu!</p>';
}else{
echo '<p><font color="red">Nisam uspio uplodati slikicu, dogada se!</font></p>';
$query = "DELETE FROM uploads WHERE upload_id = $uid";
$results = @mysql_query($query);
}
} else {
echo '<p><font color ="red">Nisam uspio uplodat sliku zbog system errora. Sorry!</font></p>';
}
mysql_close();
}
?>

nisam sigurna da li sam na pravo mjesto ubacila folder uploads, stavila sam ga gdje je i index.php, ali sam napravila tablicu i u mysql sa istim nazivom, sad me muci sto mi izbacuje gresku da nije uplodao sliku zbog systm errora! Please help me! Moram dovrsit projekt, a ne znam kako!
Re: Kako da posetioci sajta upload-uju neki fajl 28.11.2005. u 11:39 · pre 254 meseci #15
Evo vako mi radi ta tvoja sctipta:

Code:

if(move_uploaded_file($_FILES['upload']['tmp_name'], "../uploads/".$_FILES['upload']['name'])) {



TJ

Code:

// Ovo ti nije potrebno
$filename = $uid . '.' .$extension[1];

// sto bi u svako slucaju trebalo da bude kako i ovo:

$filename = $extension[0].".".$extension[1];

// Naravno
$_FILES['upload']['name']



[Ovu poruku je menjao sale83 dana 28.11.2005. u 12:48 GMT+1]
Potpis
Sto mozes danas ne ostavljaj za sutra!
Re: Kako da posetioci sajta upload-uju neki fajl 06.12.2005. u 21:51 · pre 254 meseci #17
Citat:
$extension = explode ('.', $_FILES['upload']['name']);
$uid = mysql_insert_id();
$filename = $uid . '.' .
$extension[1];


Aha, hoce... za slika.dva.jpeg ti vraca dva (mozes u imenu fajla da imas koliko hoces tacaka)

Citat:

$extension = $_FILES["upload"]["type"];


i BTW sve proveri pre UPDATE ili INSERT INTO upita, ne ovako... tako ja mogu 2Mb ZIP da ti uploadujem na server...

Dakle, ime fajla mozes da ne diras, ili, sto sam ja uradio, da resamplujes sliku (probajte upload zipova preimenovanih u jpg na mom sajtu - nece) a $extension ti sluzi da proveris tip fajla npr image/jpg, image/png, image/gif, image/jpeg

[Ovu poruku je menjao bojan_bozovic dana 06.12.2005. u 22:54 GMT+1]
Re: Kako da posetioci sajta upload-uju neki fajl 17.12.2005. u 17:48 · pre 253 meseci #18
Zanima me da li se to sta ljudi upload-aju može odma direktno ubaciti na stranicu,skinia sam sve ove skripte i one prebacuju u folder kako napraviti da prebacuje na stranicu direktno???

Ako mi netko može pojasnit ovu stvar:

1.Piše da folderu dodijelim CHMOD 777 di to treba staviti i naznaciti????
Potpis
DOBRA RIJEČ I PIŠTOLJ OTVARAJU SVAKA VRATA!
Re: Kako da posetioci sajta upload-uju neki fajl 17.12.2005. u 18:48 · pre 253 meseci #20
A kako napraviti da kad netko nesto upload-a da to direktno ide na stranicu npr. slike i opis
Potpis
DOBRA RIJEČ I PIŠTOLJ OTVARAJU SVAKA VRATA!
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme