Autor Zpráva
Martin7
Profil
Ahoj,
mám problém při uploadu obrazku a vytvoření miniatury, obrázek se ulozí miniatura sice taky, ale je to pouze cernej obrazek :( nevíte proc tomu tak je ? Taky jsem chtel obrazek ulozit ve dvou velikostech ale ulozí se vzdycky jen jeden.

<?php session_start();

include "../spojit.php";
$datum = Date("j.m.Y H:i:s", Time());

if (isset($_POST["send"]))
{
if(($_FILES['fupload']['type']=="image/jpeg") OR ($_FILES['fupload']['type']=="image/gif") OR ($_FILES['fupload']['type']=="image/pjpeg")){ 
$slozka = "../images/foto";
$cil = $slozka . "/" .$_FILES['fupload']['name'];
$nazev_souboru = $_FILES['fupload']['tmp_name']; 
$nazev = $_FILES['fupload']['name'];
if(file_exists($cil)){
echo "Soubor již existuje!<br />";
}else{
$copy = move_uploaded_file($nazev_souboru, $cil)
or die ("Přenesený soubor nelze zkopírovat"); 
chmod ($cil, 0644);
if($copy == true){ 
echo "Soubor " .$_FILES['fupload']['name']. " byl úspěšně nahrán na server.\n<br>";

$vlozit_obrazky=mysql_query("INSERT INTO foto (nazev,popis,cesta,autor,datum,kategorie) VALUES ('".$_POST["nazev"]."','".$_POST["popis"]."','$nazev','".$_SESSION['uzivatelske_jmeno']."','$datum','".$_POST['kategorie']."')") or die (mysql_error());


	
  $obrazek_velikost_mini = getimagesize($_FILES['fupload']['tmp_name']);
  
  $poslany_obrazek = ImageCreateFromJpeg($_FILES['fupload']['tmp_name']);

  $novy_obrazek_mini = imagecreatetruecolor(120, 80);

  ImageCopyResampled($novy_obrazek_mini, $poslany_obrazek,0,0,0,0,120,80,$obrazek_velikost_mini[0],$obrazek_velikost_mini[1]);  


ImageJPEG($novy_obrazek_mini,$slozka."/"."m_$nazev",100);

}
else{
echo "Soubor nemohl být nahrán.\nPočet chyb: " . $_FILES['fupload']['error'];
}
}

}else{
echo "Lze nahrávat pouze soubory typu JPEG a GIF!";
}
}	
   
?>
Anonym
Profil *
vidím ImageCreateFromJpeg, ale co když nahrávám gif?
Alphard
Profil
Funkce move_uploaded_file() soubor přemístí, nezkopíruje. Nemůžete dále pracovat s původním souborem.

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:

0