Autor Zpráva
Cubex
Profil *
Jde nastavit vlastní adresář, kde se budou ukládat dočasné sobory(v rámci hostingu) ?

Přenáším obrázek $_FILES['obrazek']['tmp_name']
juneau
Profil
K cemu je to potreba? Pouzivate funkci copy() nebo move_uploaded_file()? Ta prvni pri zapnutem SAFE_MODE zlobi, ta druha ne.
Cubex
Profil *
Jo jenže když zlobí dočasný soubor, tak ho ani move_uploaded_file() nepošlu, ne ?
juneau
Profil
No on si ho myslim server nekam ulozi, ale pri snaze dostat ho pomoci copy() do vlastniho adresare zjisti, ze (SAFE_MODE) k docasnemu adresari nemate mit pristup (neni ve vasich slozkach, v rootu) a nepovoli to. zatimco fce move_uploaded_copy() pracuje pouze s uploadlymi soubory, takze se o ni server tolik nestara. Staci vymenit ty funkce a nechat stejne parametry a zkusit to. mne to pomohlo.
Cubex
Profil *
Jde mi o problém:

Warning: imagejpeg(): supplied argument is not a valid Image resource in /var/www/html/stranky/miragoweb-zaloha/public_html/edit/data/nahled.ph p on line 36

Include soubor vkládaný do formuláře:


<?

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

if(($metriky_obr[0] or $metriky_obr[1])<144)
{ // Kontrola rozměrů
echo("Odeslali jste obrázek příliš malých rozměrů<br>");
$error = 1;
}

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

//míra komprese
$komprese = 100 - $komprese;

move_uploaded_file($_FILES["obrazek"]["tmp_name"], $cesta);

if($metriky_obr[2] == 1)
{
$kopirovani = imagegif($cesta, $cesta, $komprese);
}
elseif($metriky_obr[2] == 2)
{
$kopirovani = imagejpeg($cesta, $cesta, $komprese);
}
else
{
$kopirovani = imagepng($cesta, $cesta, $komprese);
}

if(!$kopirovani)
{
echo "Kopírování souboru se nepovedlo. Opakujte prosím požadavek.<br>";
$error = 1;
}
else
{
$server = $_SERVER['SERVER_NAME'];
$adresa = substr( $cesta, 2);
echo "Byl vytvořen obrázek: <A href=\"$cesta\">http://$server" . "$adresa</A><br><br>";
}
}
?>


Řádek 36: $kopirovani = imagejpeg($cesta, $cesta, $komprese);

To samé to vypisovalo i u minulého způsobu bez move_uploaded_file a $_FILES["obrazek"]["tmp_name"] místo obrázku

Opravdu budu rád, kdyby si s tím někdo věděl rady. Ten warning to hazí jak na serveru, tak i na localu.
juneau
Profil
No nevim, ale me prijde logicky vzit ten obrazek, nakopirovat ho na server, pres move_uploaded_file() jej ulozit do sve slozky, na kterou si muzes nastavit prava a pod a potom s nim tedy zacit pracovat. takhle se ho snazis upravovat v temp adresari serveru a tam mas podle me fakt jen velmi omezeny pristup
juneau
Profil
a je taky nutne, aby u tech img_ funkci byly ty dva parametry stejne? nemuze byt problem v tom?
Cubex
Profil *
Stejné scripty, lépe řečno téměř stejné scripty, jsem už dělal na servrech od Webzu, přes Pipni až po Nový Hosting a žádný problém, nevidím důvod proč bych neměl mít práva k upravování na localu možná(určitě), ale na serveru fakt ne.
juneau
Profil
Jooo, dal uz me nic nenapada.
Cubex
Profil *
A nemohlo by to třeba být. Tím, že jak mám:

$kopirovani = imagejpeg($cesta, $cesta, $komprese);

bych měl místo proměnné $cesta dát proměnnou v které bych fopen() otevřel ten obrázek ?
Toto téma je uzamčeno. Odpověď nelze zaslat.

0