За тази цел са ви необходими няколко неща:
1. PHP с GD библиотека.
2. PHP класа = https://uroci.net/downloads/phpthumb-latest.zip
Изтегляте го и разархивирате файловете в папка "class"
Започваме
<?php
require_once('class/ThumbLib.inc.php');
header('Content-Type: text/html; charset=Windows-1251');
$pics = getcwd(). '/pics/' ; # Директория на снимките
$thumbs = getcwd() . '/thumbs/'; # Директория на Thumbnali
function makeThumb($thumb = '') {
global $pics, $thumbs;
if (!is_dir($pics)) #Проверяваме дали случайно директориите липсват
mkdir($pics); #Е ако ги няма създаваме ги
if(!is_dir($thumbs))
mkdir($thumbs);
$thumbname = $thumbs . $thumb;
$thumb = PhpThumbFactory::create($thumb); # Зареждаме снимката
$thumb->resize(150, 150); # Width , Height режем
$thumb->save($thumbname); # Запаметяваме
}
if (isset($_POST['upload'])) {
$ext = strstr($_FILES['img']['name'],"."); # Взимаме разширението на файла
if ($ext != '.jpg' && $ext != '.JPG' && $ext != '.bmp'
&& $ext != '.BMP' && $ext != '.gif' && $ext !=
'.GIF' && $ext != '.gif' && $ext != '.png' &&
$ext != '.PNG')
die('Файла не е снимка!');
$target = $pics . $_FILES['img']['name'] . $ext; # Къде ще се запише снимката ..
if (move_uploaded_file($_FILES['img']['tmp_name'], $target)) { #Проверяваме дали снимката е била качена
chdir($pics); #Влизаме при снимките
$thumb = makeThumb($_FILES['img']['name'] . $ext); #Създаваме Thumbs
echo 'Файла е успешно качен със успешно създаден Thumbnali';
}
else
die('Грешка!');
}
?>
<html>
<head>
<title> Създаване на Thumbs - uroci.net </title>
</head>
<form enctype="multipart/form-data" action="fix.php" method="POST">
<body>
<table>
<tbody>
<tr>
<td> Снимка </td>
<td> <input type="file" name="img"> </td>
</tr>
<tr>
<td> <input type="submit" name="upload" value="Качи!"> </td>
</tr>
</tbody>
</table>
</body>
</form>
</html>
тествал съм го работи ^_^
/*
при мен имаше проблем с memory_limit-а на PHP-то ако и вие имате подобен проблем
1: отваряте php.ini
2: намирате memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
и го променяте на 30 // аз използвам 128 и нямам проблеми .
3: рестартирате apacheto за да презареди новия лимит.
*/
е късмет! :)