Cadastrar múltiplas fotos PHP
Estou tentando cadastrar multiplas imagens com prevew, mas esta dando erro e não cadastra nenhuma... Alguém pode me ajudar?
<?php
include('config/conn.php');
ini_set('memory_limit', '1024MM');
class UploadImagem{
public $width;
public $height;
protected $tipos = array("jpeg", "png", "gif","JPEG", "PNG", "GIF");
protected function redimensionar($caminho, $nomearquivo){
list($width_orig, $height_orig, $tipo, $atributo) = getimagesize($caminho.$nomearquivo);
$i = 0;while($i <= 2000){//looping das resolucoes
$i += 200;
$resolucao = $i;
$caminho_novo = $caminho.$resolucao.'/';
$width = $resolucao;
$height = $resolucao;
if($width_orig > $height_orig){
$height = ($width/$width_orig)*$height_orig;
} elseif($width_orig < $height_orig) {
$width = ($height/$height_orig)*$width_orig;
}
$novaimagem = imagecreatetruecolor($width, $height);
switch($tipo){
case 1:
$origem = imagecreatefromgif($caminho.$nomearquivo);
imagecopyresampled($novaimagem, $origem, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagegif($novaimagem, $caminho_novo.$nomearquivo);
break;
case 2:
$origem = imagecreatefromjpeg($caminho.$nomearquivo);
imagecopyresampled($novaimagem, $origem, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagejpeg($novaimagem, $caminho_novo.$nomearquivo);
break;
case 3:
$origem = imagecreatefrompng($caminho.$nomearquivo);
imagecopyresampled($novaimagem, $origem, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagepng($novaimagem, $caminho_novo.$nomearquivo);
break;
}
imagedestroy($novaimagem);
}
imagedestroy($origem);
}
protected function tirarAcento($texto){
$com_acento = array('à','á','â','ã','ä','å','ç','è','é','ê','ë','ì','í','î','ï','ñ','ò','ó','ô','õ','ö','ù','ü','ú','ÿ','À','Á','Â','Ã','Ä','Å','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','O','Ù','Ü','Ú','Ÿ',);
$sem_acento = array('a','a','a','a','a','a','c','e','e','e','e','i','i','i','i','n','o','o','o','o','o','u','u','u','y','A','A','A','A','A','A','C','E','E','E','E','I','I','I','I','N','O','O','O','O','O','0','U','U','U','Y',);
$final = str_replace($com_acento, $sem_acento, $texto);
$com_pontuacao = array('´','`','¨','^','~',' ','-');
$sem_pontuacao = array('','','','','','_','_');
$final = str_replace($com_pontuacao, $sem_pontuacao, $final);
return $final;
}
public function salvar($caminho, $file, $nome_imagem){
$caminho = $caminho;
$file['name'] = $this->tirarAcento(($nome_imagem));//$file['name'] NOME ORIGINAL
$uploadfile = $caminho.$file['name'];
$tipo = strtolower(end(explode('/', $file['type'])));
if (array_search($tipo, $this->tipos) === false) {
$mensagem = "<font color='#F00'>Envie apenas imagens no formato jpeg, png ou gif!</font>";
return $mensagem;
}
else if (!move_uploaded_file($file['tmp_name'], $uploadfile)) {
switch($file['error']){
case 1:
$mensagem = "<font color='#F00'>O tamanho do arquivo é maior que o tamanho permitido.</font>";
break;
case 2:
$mensagem = "<font color='#F00'>O tamanho do arquivo é maior que o tamanho permitido.</font>";
break;
case 3:
$mensagem = "<font color='#F00'>O upload do arquivo foi feito parcialmente.</font>";
case 4:
$mensagem = "<font color='#F00'>Não foi feito o upload de arquivo.</font>";
break;
}
} else{
list($width_orig, $height_orig) = getimagesize($uploadfile);
if($width_orig > $this->width || $height_orig > $this->height){
$this->redimensionar('./'.$caminho, $file['name']);
}
$mensagem = "<a href='".$uploadfile."'><font color='#070'>Upload realizado com sucesso!</font><a>";
}
}
}for($i = 0; $i < count($foto); $i++) {
$foto = $_FILES['foto'];
$tipo = explode('/', $foto['type']);
$extensao = $tipo[1];
}
if (!file_exists('imagens/')) {
mkdir('imagens/', 0777, true);
}
$nome_imagem = md5(date('Y-m-d H:i:s')).'.'.$extensao;
$i = 0;
while($i <= 2000){//looping das resolucoes
$i += 200;
$resolucao = $i;
if (!file_exists('imagens/'.$resolucao.'/')) {
mkdir('imagens/'.$resolucao.'/', 0777, true);
}
}
for($i = 0; $i < count($foto); $i++) {
$upload = new UploadImagem();
echo $upload->salvar('imagens/', $foto, $nome_imagem[$i]);
}
for($i = 0; $i < count($foto); $i++) {
$result = "INSERT INTO jogos (imagem) VALUES ('$nome_imagem')";
$resultado = mysqli_query($conn,$result);
echo '<img width="200px" src="imagens/'.$nome_imagem.'">';
}
//header('Location: http://www.highflexemborrachados.com.br/sistema/modelo.php');
?>Discussão (7)
Carregando comentários...