Autor Zpráva
Apostolus
Profil
snažím se udělat upload obrázku, jde o to že ho chci nejdřív změnšit a pak uložit na server už změnšený. Našel jsem na netu script ale nějak se mi nedaří ho zprovoznit. Byl bych rád kdybyste mi pomohli chybu najít. Děkuju


<?
if (isset($_POST[odeslat])) {

function resizer()
{
$filename = $_FILES['userfile']['tmp_name'];
$MaxWidth = '50';
$MaxHeight = '50';

//zjistime puvodni velikost obrazku
list($OrigWidth, $OrigHeight)
= getimagesize($filename);
//hodnota 0 v parametrech MaxWidth resp. MaxHeight znamena,
//ze sirka resp. vyska vysledku muze byt libovolna
if ($MaxWidth == 0)
$MaxWidth = $OrigWidth;
if ($MaxHeight == 0)
$MaxHeight = $OrigHeight;

$pw = $OrigWidth / $MaxWidth;
$ph = $OrigHeight / $MaxHeight;

if ($pw > $ph) {
$p = $pw;
}
else
{
$p = $ph;
}
if ($p < 1) {
$p = 1;
}

$NewWidth = (int)$OrigWidth / $p;
$NewHeight = (int)$OrigHeight / $p;

$image_p = imagecreatetruecolor($NewWidth, $NewHeight);

$image = imagecreatefromjpeg($filename);

$zmensenina = imagecopyresampled($image_p,
$image, 0, 0, 0, 0,
$NewWidth, $NewHeight,
$OrigWidth, $OrigHeight);
}


$target_path = "images/";
$uploadfile = $target_path . basename( $_FILES['userfile']['name']);


if (move_uploaded_file($zmensenina,$uploadfile))
{
echo "Soubor byl nahrán na server<br>";
echo "šířka je ". $width;
echo " výška je ". $height;
}
else
{
echo "Soubor nebyl přesunut na server<br>";
}

}
?>
<form method="post" enctype="multipart/form-data" action="upload.php">
<input name="userfile" type="file"><br>
<input name="odeslat" type="submit" value="Nahrat soubor">
</form>
krteczek
Profil
myslím že upravovat soubor v tempunemužeš,nejprva homusíš přenézt do adresáře (třeba jako $original) a s ním teprve můžeš pracovat.
alejestli jsem pochopil to co píšeš správně tak si myslíš že upravuješ soubor u klienta, to nelze ;:-)
1. upload
2. přenézt z tempu do adresáře => move_upladed_file()
3. práce se souborem (resize...)
krteczek
Apostolus
Profil
krteczek

jde to z tempu našel jsme script:-) a kupodivu mi funguje,i tak moc děkuju
Michalek
Profil
Apostolus
V tempu to jde jenom někde, nějaký hosting to nepovoluje, tož tak. Ale co sem třeba dát ukázku toho funkčního?
Toto téma je uzamčeno. Odpověď nelze zaslat.