Итак, у меня есть сценарий загрузки, который загружает изображение в папку и сохраняет путь изображения на db. Мне нужна помощь в изменении размера изображения до 800x600 и создание большого пальца для него. И вопрос, мне нужно сохранить большой путь в db?Изменение размера изображения и создание миниатюры
Я хочу, чтобы загрузить изменения размера изображения (800х600), я не хочу, чтобы сохранить на сервере оригинал (без изменения размера)
Вот что я получил:
<?php
include('dbconnect.php');
if(isset($_POST['enviar']))
{ //START IF
$nomesitio = $_POST['nome'];
$horario = $_POST['horario'];
$contato = $_POST['contato'];
$morada = $_POST['morada'];
$tipo = $_POST['tipo'];
$freguesias = $_POST['freguesias'];
$arqName = $_FILES['arquivo']['name'];
$arqType = $_FILES['arquivo']['type'];
$arqSize = $_FILES['arquivo']['size'];
$arqTemp = $_FILES['arquivo']['tmp_name'];
$arqError = $_FILES['arquivo']['error'];
$tiposPermitidos = array('image/gif', 'image/jpeg', 'image/jpg', 'image/png');
$tamanhoPermitido = 6024 * 3000;
if ($arqError == 0)
{
if(array_search($arqType, $tiposPermitidos) === false)
{
$retorno = '<span class="no">O tipo de arquivo enviado é invalido!</span>' ;
}
elseif ($arqSize > $tamanhoPermitido)
{
$retorno = '<span class="no">O tamanho do arquivo enviado e maior que o limite!</span>';
}
else
{
$pasta = 'images_sitios/';
$extensaoTemp = explode('.',$arqName);
$extensao = strtolower(end($extensaoTemp));
$nome = time(). '.' . $extensao;
$upload = move_uploaded_file($arqTemp, $pasta . $nome);
if ($upload === true)
{
$ficheiro = $pasta.$nome;
}
else
{
$retorno = '<span class="no">Nao foi possivel fazer o upload da imagem!</span>';
}
}
}
if(empty($ficheiro))
{
$retorno = '<span class="quase">Insira a imagem!</span>';
}
if(empty($retorno))
{
$query = mysql_query("INSERT INTO sitio (nome_sitio, horario, contato, morada, imagem, id_tipo, id_freguesia) VALUES ('$nomesitio','$horario','$contato','$morada','$ficheiro','$tipo','$freguesias')") or die (mysql_error());
if($query === true)
{
$sucesso = '<span class="yes">Sitio inserido com sucesso!</span>';
echo $sucesso;
}
}
else
{
echo $retorno;
}
} //END IF
?>
Как я могу сделать это? Заранее спасибо.
совет общего программирования: используйте заготовки в пользу вкладок. Тогда у вас не будет таких проблем с форматированием. Большинство текстовых редакторов предоставляют эту опцию. – hek2mgl
http://www.verot.net/php_class_upload.htm (или какой-либо другой класс хранения контента, их много). О дорожке большого пальца - я бы предпочел создать две папки - один для больших пальцев, один для больших изображений - и сохранить файлы под тем же именем ->, поэтому для этого вам понадобится одно поле в таблице db. – sinisake
Итак, вы говорите, что после создания большого пальца, переместите этот файл, как images_sitios/thumbs, и используйте одно и то же имя? Поэтому я должен использовать $ nome, чтобы поместить имя на большой палец, не так ли? поэтому они получили то же имя .. –