Autor Zpráva
Abraham
Profil *
Dost mě znechutil jeden script, který v jedné složce se stejným stromem podsložek funguje a v jiné ne, i když mám všude plná práva.

Konkrétně to hází:


Warning: move_uploaded_file(../image/img060421075223.jpeg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/html/stranky/rocktime/include/imgupload.php on line 27

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpqjlqj1' to '../image/img060421075223.jpeg' in /var/www/html/stranky/rocktime/include/imgupload.php on line 27

Sice ho můžu rozchodit, když dám místo relativní cestu absolutní, ale to ještě nevysvětluje to, proč na jednom místě jde a na druhém ne. Hrál jsem si s tím celý den, ale bez jakéhokoli výsledku.

Script:


<?
$obrazek = $_FILES["obrazek"]["tmp_name"];
$metriky_obr = GetImageSize($obrazek); // zjištění rozměrů obrázku
$velikost = $_FILES["obrazek"]["size"];

if(($metriky_obr[0] or $metriky_obr[1])<100)
{
$error = 1;
}

if($error != 1)
{
$cesta = "../image/";
if($metriky_obr[2] == 1)
{
$cesta = $cesta . "img" . date("ymdhis") . ".gif";
}
elseif($metriky_obr[2] == 2)
{
$cesta = $cesta . "img" . date("ymdhis") . ".jpeg";
}
else
{
$cesta = $cesta . "img" . date("ymdhis") . ".png";
}

$kopirovani = move_uploaded_file($obrazek, $cesta);

if(!$kopirovani)
{
$error = 2;
}

if($velikost > 1024*200 && $velikost < 1024*450)
{
if($metriky_obr[2] == 1)
{
imagegif($obrazek, $cesta, 90);
}
elseif($metriky_obr[2] == 2)
{
imagejpeg($obrazek, $cesta, 90);
}
else
{
imagepng($obrazek, $cesta, 90);
}
}
elseif($velikost > 1024*450)
{
if($metriky_obr[2] == 1)
{
imagegif($obrazek, $cesta, 50);
}
elseif($metriky_obr[2] == 2)
{
imagejpeg($obrazek, $cesta, 50);
}
else
{
imagepng($obrazek, $cesta, 50);
}
}
}
?>


Důležité místa formuláře:


<script>
function disable()
{
if(document.getElementById('potvrzeni').checked == true)
{
document.getElementById('obrazek').disabled = false;
}
else
{
document.getElementById('obrazek').disabled = true;
}
}
</script>

<form action="?action=bazar" method="post" name="formular" enctype="multipart/form-data" onsubmit="return validate(this)">

<input type="checkbox" name="potvrzeni" id="potvrzeni" value="ano" onclick="disable()">
<input type="file" name="obrazek" id="obrazek" disabled="disabled">
finc
Profil
Nějak jsem to nezkoumal, ale je zde ještě jedna důležitá věc.
Musí na tu cestu "vidět" apache. Pokud nemá apache nastaveno document root na tu cestu, php to za Vás nevyřeší.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0