У меня есть определённый код заливки изображения на сервер с занесением в базу имени картинки. Он для меня очень удобный, ибо он и редактирует размер и "режет" качество картинки, но, есть одна проблемка, никак не могу сообразить каким "макаром" реализовать функцию заливки одновременно трёх изображений, мне впринцепи больше и не надо. Думал может поставить сам скрипт в цикл, но что то ничего дельного не надумал. В общем вот сам код:
<?php
$valid_types = array("gif","jpg", "png", "jpeg", "GIF", "JPG", "PNG", "JPEG");
$dir="upload_image/";
if (!is_dir($dir)) {
mkdir($dir,0755);
}
function createphoto ($input,$output) {
$w = 500;
$q = 50;
$f=$input;
$src = imagecreatefromjpeg($f);
$w_src = imagesx($src);
$h_src= imagesy($src);
$ratio = $w_src/$w;
$w_dest = round($w_src/$ratio);
$h_dest = round($h_src/$ratio);
$dest = imagecreatetruecolor($w_dest,$h_dest);
imagecopyresized($dest, $src, 0, 0, 0, 0, $w_dest, $h_dest, $w_src, $h_src);
imagejpeg($dest,$output,$q);
imagedestroy($dest);
imagedestroy($src);
}
if (isset($_POST['pr'])) {
if ($_FILES['img']['tmp_name']!="") {
$ext = substr($_FILES['img']['name'], 1 + strrpos($_FILES['img']['name'], "."));
if (in_array ($ext, $valid_types)) {
$imageinfo = getimagesize($_FILES['img']['tmp_name']);
if($imageinfo['mime'] == 'image/jpeg') {
$random=rand(0,999999999);
$output=$random.".".$ext;
$input=$_FILES['img']['tmp_name'];
createphoto($input,$dir.$output);
if (file_exists($dir.$output)) {
echo "<p>файл загружен с именем {$output}</p>";
$insert="INSERT INTO 'images' ('image1') VALUES ('".$output."');";
$sql=mysql_query($insert);
}
else {
echo "файл не был загружен";
}
}
else echo "<p>Неверный тип загружаемого файла</p>";
}
else echo "<p>Данное расширение недопустимо для загрузки</p>";
}
else echo "<p>Следует загрузить файл</p>";
}
echo '<FORM METHOD="POST" ENCTYPE="multipart/form-data">';
echo "<input type='file' class='file' name='img' size='100'> ";
echo "<input type='submit' class='filebtn' name='pr' value='добавить'>" ;
echo '</FORM>';
?>
И еще один вопросик, как мне реализовать скажем так "по правильному" изменение названия изображения, я использую на данный момент функию rand(0,10); , но она меня не особо устраивает, если не сложно подскажите и по этому поводу. Заранне спасибо!