Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

php upload slika i skladistenje na server

[es] :: PHP :: PHP za početnike :: php upload slika i skladistenje na server

[ Pregleda: 2598 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

neki_deki
neki_deki
Zemun

Član broj: 83812
Poruke: 36
*.dynamic.isp.telekom.rs.

Sajt: www.fotostudiojovana.com


Profil

icon php upload slika i skladistenje na server21.07.2012. u 12:21 - pre 143 meseci
ne znam gde gresim, pokusavao sam svasta nesto nadjeno na ES-u i sire...

http://www.elitesecurity.org/t96073-0#1365274

dati primer sam probao.
fajl sam nazvao ul.html i uploadovao na server

forma za unos podataka:

Code:

<html>
<body>

<!-- enctype mora biti multipart form data, metod mora biti POST -->
<form enctype="multipart/form-data" action="ul.php" method="POST">
    <!-- MAX_FILE_SIZE mora biti pre FILE polja, i ovo ne radi na svim browserima -->
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
    <!-- ime input file polja će biti key u $_FILES nizu -->
    FAJL: <input name="userfile" type="file" />
    <input type="submit" value="Send File" />
</form>

</body>
</html> 



zatim sam napravio fajl ul.php i takodje uploadovao na server

Code:

<?php
//određujemo folder
$uploaddir = './test/fajlovi/';
//formiramo celu putanju novog fajla
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo "$uploadfile";

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
   echo "Fajl je uspešno uploadovan.\n";
} else {
   echo "Greška pri uploadu!\n";
}

echo 'Informacije o uploadu:';
print_r($_FILES);

print "</pre>";
?> 


i kao rezultat dobijam poruku o gresci

Code:

./test/fajlovi/Chacha.gif

Greška pri uploadu!
Informacije o uploadu:Array
(
    [userfile] => Array
        (
            [name] => Chacha.gif
            [type] => image/gif
            [tmp_name] => /chroot/tmp/phpofGGnM
            [error] => 0
            [size] => 13595
        )

)


ono sto me jos buni je i error=0. fajla nema na serveru. negde gresim, a ne znam gde.... pomozite molim vas.
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
188.247.133.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: php upload slika i skladistenje na server21.07.2012. u 12:54 - pre 143 meseci
Dodaj ovo na vrh skripte:

Code:
error_reporting(E_ALL);
ini_set("display_errors", 1);


Imaš li dozvolu za pisanje u odredišnom folderu? Taj error je iz $_FILES niza, i nema veze sa move_uploaded_file funkcijom - vidiš da ti je fajl na serveru u tmp direktorijumu.
 
Odgovor na temu

neki_deki
neki_deki
Zemun

Član broj: 83812
Poruke: 36
*.dynamic.isp.telekom.rs.

Sajt: www.fotostudiojovana.com


Profil

icon Re: php upload slika i skladistenje na server23.07.2012. u 11:42 - pre 142 meseci
./test/fajlovi/Chacha.gif



Warning: move_uploaded_file(./test/fajlovi/Chacha.gif) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/test/ul.php on line 13



Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/chroot/tmp/php68QXFK' to './test/fajlovi/Chacha.gif' in /home/test/ul.php on line 13

Greška pri uploadu!
Informacije o uploadu:Array
(
[userfile] => Array
(
[name] => Chacha.gif
[type] => image/gif
[tmp_name] => /chroot/tmp/php68QXFK
[error] => 0
[size] => 13595
)

)


ovo mu dodje kao odgovor kad sam ubacio ono sto ste rekli... poslao sam pre nekoliko dana odgovor n ES ali nije stigao, mozda bi trebalo umesto racunarima da se bavim sadnjom kukuruza... http://www.ratarstvo.info/wp-c...ds/2011/03/hibrid-kukuruza.jpg :)

[Ovu poruku je menjao neki_deki dana 23.07.2012. u 19:38 GMT+1]
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
188.247.133.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: php upload slika i skladistenje na server23.07.2012. u 21:51 - pre 142 meseci
Da li postoji direktorijum

/home/test/test/fajlovi

?
Obrati pažnju na test/test - zato što je u skripti ul.php tekući direktorijum ( ./ ) zapravo /home/test/

pa je onda

$uploaddir == /home/test/test/fajlovi
 
Odgovor na temu

neki_deki
neki_deki
Zemun

Član broj: 83812
Poruke: 36
*.dynamic.isp.telekom.rs.

Sajt: www.fotostudiojovana.com


Profil

icon Re: php upload slika i skladistenje na server26.07.2012. u 10:43 - pre 142 meseci
probao sam sve moguce kombinacije direktorijuma.... cak sam probao isto to na drugom serveru misleci da je zabranjen takav upload. postavite neki kod ako imate da na bilo koji nacin uploadujem sliku ili bilo koji fajl na server preko php-a da vidim sta bi sigurno radilo pa cu polako da nadogradjujem. ne vidim gde gresim... (verovatno je za mene kopanje kukuruza)

 
Odgovor na temu

neki_deki
neki_deki
Zemun

Član broj: 83812
Poruke: 36
*.dynamic.isp.telekom.rs.

Sajt: www.fotostudiojovana.com


Profil

icon Re: php upload slika i skladistenje na server26.07.2012. u 11:52 - pre 142 meseci
forma_unos.html izgleda ovako:

Code:
<form enctype="multipart/form-data" action="uploader.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="1200000" />
Odaberite fajl za upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>


uploader.php izgleda ovako:

Code:
<? $target_path = "./fajlovi/";

echo "Direktorijum za snimanje fajlova je: $target_path <br>";
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    echo "Fajl ".  basename( $_FILES['uploadedfile']['name']). 
    " je uspešno uploadovan na server";
} else{
    echo "Došlo je do GREŠKE prilikom uploada!";
}
?>


radi podjednako i sa:
Code:
$target_path = "./fajlovi/";


i sa:
Code:
$target_path = "fajlovi/";



ps: ako ima neki programer koji se kao dopunskim poslom bavi uzgojem kukuruza, evo ja bih mogao da okopavam posto za bolje nisam...
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: php upload slika i skladistenje na server26.07.2012. u 13:46 - pre 142 meseci
neki_deki, kopiraj ovo i nalepi u neki prazan php fajl i pokreni preko servera taj fajl.

Code (php):


<?php
define("_FolderPath__", __DIR__);
         
          define("_imgDir__", _FolderPath__ .'/images/');
          define("_cssFilesDir__",_FolderPath__ .'/css/');
          define("_jsFilesDir__",_FolderPath__ .'/javascript/');
          define("_classesDir__",_FolderPath__ .'/classes/');
          define("_htmlDir__",_FolderPath__ .'/html/');
          define("_otherDir1",_FolderPath__ .'/_otherDir1/');
          define("_otherDir2",_FolderPath__ .'/_otherDir2/');
          define("_otherDir3",_FolderPath__ .'/_otherDir3/');
          define("_otherDir4",_FolderPath__ .'/_otherDir4/');
          define("_otherDir5",_FolderPath__ .'/_otherDir5/');
         
          echo '<html><body><pre>'.
          '<b>Root putanja, polazna tačka</b> » '. _FolderPath__ .''."\n".
          '<b>Slike</b> » '. _imgDir__ .''."\n".
          '<b>Css dir</b> » '. _cssFilesDir__ .''."\n".
          '<b>Js dir</b> » '. _jsFilesDir__."\n".
          '</pre></html></body>';
?>
 


Znači, caka je u tome da ovo ↓

Code (php):

<?php define("_FolderPath__", __DIR__); ?>
 


Leži u nekom fajlu u site ili subdomain root folderu, ukoliko koristiš poddomen.

I ti taj fajl treba da iščitaš, kako god se taj fajl zvao, kako god ga krstio.
Onda kada imaš definisanu _FolderPath__ root putanju, ostale kasnije možeš da definišeš i u drugoj skripti/fajlu.

Ovakve definisane putanje nisu spremne za korišćenje u frontendu, već se koriste samo za include; ili require;, za komplet file() arsenal, itd.


Code (php):

<?php

require_once _classesDir__ .'some_funcional_class.php';
include _htmlDir__ .'index.php';

?>
 


Tu gde je <img src="??" /> , nećeš moći da pozivaš skripte ili slike, već ćeš morati dodatno da rasparčaš "_FolderPath__" konstantu.

To može da se izvede sa ovim dole, npr..

Code (php):

<?php

$rLoc=explode('\\', _FolderPath__); $rLoc=end($rLoc);
define("frontEndRoot", substr($rLoc, strlen($rLoc)).'/');

# Definicija za folder gde su pdf fajlovi
define("_PDF__", frontEndRoot .'pdf/');

?>
 


I onda ...

Code (php):


$pdfFile[1] = '<a href="'. _PDF__ .'pdfDokument.pdf" title="Preuzmite Dokument">Pdf</a>';

 


Ili još bolje, dodaš sve fajlove koji mogu da popritrebaju kroz definicije kasnije..

Code (php):


define("pdfFile1Name", _PDF__ ."dokument.pdf");

# gde bi href izgledao ovako..

$pdfFile[1] = '<a href="'. pdfFile1Name .'" title="Preuzmite Dokument">Pdf</a>';

# ili

echo '<a href="'. pdfFile1Name .'" title="Preuzmite Dokument">Pdf</a>';

 


Nadam se da te nisam zbunio ali, sve u svemu, probaj da ovladaš za početak, malo bolje sa ovim.
Ako ne ide ni tu.. jer, ovo je u principu laganica, onda se bacaj na poljoprivredu.

Ovako definisane putanje, uvek gađaju tu gde treba, ukoliko se struktura sajta, raspored foldera i nazivi ne menjaju, bez obzira na hosting provajdera i njihov dir/customers/html/.
about:networking
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: php upload slika i skladistenje na server07.08.2012. u 20:47 - pre 142 meseci
(Edit na prethodni post).

Malopre uvideh jedan propust povodom gornjeg primera za "rasparčavanje" to jest ekspodiranje _FolderPath__ konstante.
Dat primer hoće da radi lepo, međutim, samo u Windows okruženju, zbog kosih crtica.

U Linuxu, prethodni primer neće da šljaka.

Univerzalno rešenje postoji i ono bi trebalo ovako da izgleda.

Dakle, ne ovo ↓

Code (php):

<?php

$rLoc=explode('\\', _FolderPath__); $rLoc=end($rLoc);
define("frontEndRoot", substr($rLoc, strlen($rLoc)).'/');

......

?>
 



Već ovo ↓

Code (php):

<?php

$rLoc=explode('/', str_replace("\\", "/", _FolderPath__)); $rLoc=end($rLoc);
define("frontEndRoot", substr($rLoc, strlen($rLoc)).'/');

........

?>
 


Prethodni post je pisan u letu, tako da mi je promakla ta sitnica koju primetih, ne zamerite. :)
about:networking
 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: php upload slika i skladistenje na server

[ Pregleda: 2598 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.