ugrás a tartalomhoz

Kép feltöltése

Nagy Tamás · 2011. Ápr. 8. (P), 11.42
Sziasztok!

Egy kicsit elakadtam.

Képet szeretnék feltölteni egy szerverre, de nem történik semmi.

A kód a következő:
<div>
<?php
if ( isset( $_FILES['foto'] ) ) {



    if ( $_FILES['foto']['type'] == "image/gif" ) {

        $source = $_FILES['foto']['tmp_name'];
        $target = $_FILES['foto']['name'];
        move_uploaded_file( $source, $target );
        $size = getImageSize( $target );

        $imgstr  = "<p><img width=\"$size[0]\" height=\"$size[1]\" ";
        $imgstr .= "src=\"$target\" alt=\"uploaded image\" /></p>";

        print $imgstr;
    }
}
?>
</div>
<form enctype="multipart/form-data" 
    action="<?php print $_SERVER['PHP_SELF']?>" method="post">
<p>
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<input type="file" name="fupload" /><br/>
<input type="submit" value="Feltöltés" />
</p>
</form>
Hol lehet a hiba?
A képet ugyan arra a szerverre szeretném feltölteni, ahol ez a php file létezik.

Köszönöm!
 
1

Egy biztos. Nem ugyan az a

pinguka · 2011. Ápr. 8. (P), 12.33
Egy biztos. Nem ugyan az a név:

$_FILES['foto'] - <input type="file" name="fupload" />
4

<?php if ( isset(

pinguka · 2011. Ápr. 8. (P), 13.00

<?php  
if ( isset( $_FILES['foto'] ) ) {  
  
  
  
    if ( $_FILES['foto']['type'] == "image/gif" ) {  
  
        $source = $_FILES['foto']['tmp_name'];  
        $target = "./" . $_FILES['foto']['name'];  
        move_uploaded_file( $source, $target );  
        $size = getImageSize( $target );  
  
        $imgstr  = "<p><img width=\"$size[0]\" height=\"$size[1]\" ";  
        $imgstr .= "src=\"$target\" alt=\"uploaded image\" /></p>";  
  
        print $imgstr;  
    }  
}  
?>  
</div>  
<form action="" method="post" enctype="multipart/form-data">  
<p>  
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />  
<input type="file" name="foto" /><br/>  
<input type="submit" value="Feltöltés" />  
</p>  
</form>
Itt van javítva. De arra is figyelj amit Poetro írt.
2

fupload

Poetro · 2011. Ápr. 8. (P), 12.36
Most fupload vagy foto? Mert a form-ban fupload néven hivatkozol a fájlra, míg a PHP-ban foto néven. Valamint érdemes lenne több ellenőrzést csinálni a fájlra, mert így azért nem elég biztonságos, mivel ha valami olyan elérési utat ad meg a felhasználó fájlnévnek, ami veszélyes a te rendszeredre, akkor te azt a fájlt te létrehozod / felülírod! Valamint az az ellenőrzés, hogy $_FILES['foto']['type'] == "image/gif" nem elég erős, mert ezt az információt a felhasználó küldi, és azt hamisít oda, amit akar, azaz feltölthet hozzád PHP fájlt is, ha azt image/gif típusként küldi.
3

debug

ironwill · 2011. Ápr. 8. (P), 12.40
UPDATE: úgy tűnik, hogy már megtalálták az előttem szólók.. :)
5

Kedves tőletek, hogy

Hidvégi Gábor · 2011. Ápr. 8. (P), 13.00
Kedves tőletek, hogy gondolkoztok Nagy Tamás helyett, de így továbbra is hasonló - fölösleges - kérdéseket fog feltenni a jövőben is, mert nem tanul meg hibát keresni.

Konstruktívabb, ha ezt írjátok le:
- olvasd el a kézikönyvet
- használd a print_r() függvényt és társait
6

Igaz!

Nagy Tamás · 2011. Ápr. 8. (P), 14.07
Sziasztok!

Köszönöm a segítséget, ezt tényleg benéztem.