Autor Zpráva
zarkan
Profil
Zdar,
mám problém s nahráním fotky na server a pak ho zobrazit, dopředu upozorNuji že PHP skoro vůbec nerozumím ...
Každopádně má kód:
<table border="1" style="border-collapse: collapse;">

<td valign=top><font color="navy">
<form method="post" action="upload.php" enctype="multipart/form-data"> 
&nbsp;1) vyber fotku: <input name="userfile[]"  size="15" type="file" ><br>
&nbsp;2) popis fotky: <input type="text" size="15" name="popis" value=" ">
&nbsp;&nbsp;<input type="submit" value="Nahrát">

<br><br><center>

<img src="thumb.php?obrazek=upload/obrazek.jpg">
<br><br><font color=black><big><big>

 </form>
a upload.php vypadá následně:
        <?php
           for($i=0;$i<sizeof($userfile);$i++)
               {  
                     if(!$userfile_size[$i])
                       {
                           continue;
                       }
                    $UPLOAD = fopen( $userfile[$i], "r" );
                    $contents = fread( $UPLOAD,$userfile_size[$i]);       
                    fclose( $UPLOAD );  
                     $SAVEFILE = fopen("upload/obrazek.jpg", "wb" );
                    if(fwrite( $SAVEFILE, $contents,$userfile_size[$i] ))
                        {
                            echo "<center><br><br><br><br><b><big><big><big><big><big><big><font color=green> Díky za novou fotku.</font></b>";
}
                    else
                        {
                            echo "<b><big><font color=red> Soubor se nepovedlo nahrat!";


                        }       
                       fclose( $SAVEFILE );        
               }     
        ?>


<?
$zprava = $_POST['popis'];
if ($zprava!="")
{
$fopen = fopen("s_fotka.txt", "w+");
fwrite($fopen, $zprava);
fclose($fopen);
}?>

<meta http-equiv="refresh" content="2;url=sranda_fotky.php">
Můžu vědět co mám špatně v tom 2 řádku uploadu???
Davex
Profil
zarkan:
Můžu vědět co mám špatně v tom 2 řádku uploadu?
Máš tam špatně, že jsi to asi opsal z nějaké hodně staré knihy, protože takto se to víc jak 10 let nedělá.

Zkus nahlédnout do dokumentace PHP POST method uploads, případně pro víc souborů ještě Uploading multiple files.
zarkan
Profil
Davex:
Mám to takhle na stránce cca 13 let a fungovalo to, až teď jsem zjistil že to najednou nejde ....
Davex
Profil
zarkan:
Mám to takhle na stránce cca 13 let a fungovalo to
Už v té době to bylo špatně, protože již před 16 lety v PHP 4.2.0 byla ve výchozí konfiguraci PHP vypnuta funkcionalita „register globals“, na kterou tento kód spoléhá. Před 10 lety byl v PHP 5.3.0 označen tento způsob za zastaralý a určen ke zrušení. Před 6 lety to bylo z PHP 5.4.0 odstraněno a v dalších verzích už to neexistuje.
Keeehi
Profil
zarkan:
Nehledě na tu obrovskou bezpečnostní díru díky které si kdokoli může ze serveru stáhnout jakýkoli soubor ke kterému má PHP přístup.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0