Oprettet af lind d. 29-12-2008 03:32
Kode
<?php
//Setup
$uploaddir = '/upload/';
$maxSize = 8388608;
$allowPics = array('jpg','jpeg','jpe');
$numberOfPictures = 1;
$watermark_png = 'watermark.png';
if(is_array($_FILES['userFile']))
{
$watermark = imagecreatefrompng($watermark_png);
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
echo '<pre>';
print_r($_FILES);
echo '<pre>';
for($i = 0; $i < $numberOfPictures; $i++)
{
if($_FILES['userFile']['size'][$i] == 0)
{
continue;
}
if($_FILES['userFile']['size'][$i] > $maxSize)
{
echo 'Dit billede nummer ' . ($i+1) . ' er for stort, prøv med mindre...';
continue;
}
$uploadfile = getcwd() . $uploaddir . 'test_' . basename($_FILES['userFile']['name'][$i]);
$ext = strtolower(end(explode(".",$_FILES['userFile']['name'][$i])));
if(!in_array($ext,$allowPics))
{
echo 'Forkert billede format i billede ' . ($i+1) . ', prøv med et andet (jpg, jpeg eller jpe)!';
continue;
}
$imgSrc = $_FILES['userFile']['tmp_name'][$i];
$image = imagecreatefromjpeg($imgSrc);
$width = imagesx($image);
$height = imagesy($image);
if($watermark_width > $width || $watermark_height > $height)
{
$dstim = imagecreatetruecolor(30, 10);
imagecopyresampled( $dstim, $watermark, 0, 0, 0, 0, 30, 10, $watermark_width, $watermark_height );
$dest_x = $width - 35;
$dest_y = $height - 15;
imagecopymerge($image, $dstim, $dest_x, $dest_y, 0, 0, 30, 10, 100);
}
else
{
$dest_x = $width - $watermark_width - 5;
$dest_y = $height - $watermark_height - 5;
imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);
}
imagejpeg($image,$uploadfile,100);
imagedestroy($image);
}
imagedestroy($watermark);
header("Location: " . $_SERVER['PHP_SELF']);
exit();
}
else
{
?>
<!-- The data encoding type, enctype, MUST be specified as below -->
<form enctype="multipart/form-data" action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
<table>
<?php
for($i = 0; $i < $numberOfPictures; $i++)
{
echo '<tr><td>Send file ' . ($i+1) . ':</td><td><input name="userFile[]" type="file" /></td></tr>'."\n";
}
?>
<tr><td colspan="2"><input type="submit" value="Send File" /></td></tr>
</table>
</form>
<?
}
?>