Autor Zpráva
Gecko
Profil *
Zdravicko,
mam jednu prosbu, jakym zpusobem se da kontrolovat existence souboru, ktery chci otevrit pomoci "file_get_contents".
Mastodont
Profil
file_exists
AM_
Profil
file_exists
Gecko
Profil *
Diky.
uestla
Profil
Gecko:
Když už budeš pracovat s obsahem souboru, hodilo by se spíše použít funkci is_file($filename) - ta kontroluje jak existenci, tak že se jedná o soubor (nikoli o složku).
Gecko
Profil *
Jeste mam otazku mimo, vytvoril jsem si stahovani http://www.potapeni-as.cz/redirect.p101.html fotek nevim proc se mi kazda fotka prejmenuje na download.php.
Zde je kod:
if(isset($_GET['file'])){
$path = ''.$_GET['file'];

if (file_exists($path)) {
$image = imagecreatefromstring(file_get_contents($path));
$w = imagesx($image);
$h = imagesy($image);

$watermark = imagecreatefrompng('watermark.png');
$ww = imagesx($watermark);
$wh = imagesy($watermark);


imagecopy($image, $watermark, $w-$ww, 10, 0, 0, $ww, $wh);


header('Content-type: jpeg/jpg');
imagejpeg($image,'',100);
exit();

}
    else {
    echo "Soubor $path neni spravny";
}
    
} 
else {
    echo "Neni zadan obrazek.";
}
AM_
Profil
Abys fotku stáhnul (tedy aby se nezobrazila v prohlížeči), podstrkává se nejčastěji typ application/octet-stream. Ty jsi spatlal cosi jako "jpeg/jpg", což je nesmysl, typ jpg obrázku je "image/jpeg", žádný primární typ (tj to před lomítkem) jpeg neexistuje. poslouží to sice taky jako neznámý typ, ale je to dost matoucí.

Zamysli se nad tím, co děláš: zažádáš o soubor download.php s nějakými parametry, ale jak má prohlížeč vědět, jak se jmenuje fotka, ze které download.php obrázek vytvořil?
Toto se řeší
header("content-disposition:attachement;filename=nazev_obrazku.jpg");
Gecko
Profil *
AM:
Diky, si boží.
application/octet-stream jsem zkousel, ale nebylo to ono.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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