Jump to content


Photo

[Dúvida] Upload De Imagem Com Php E Ajax


  • Faça o login para participar
Nenhuma resposta neste tópico

#1 Reginaldo Filho

Reginaldo Filho

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Masculino
  • Localidade:Jau

Posted 18/01/2013, 10:56

Não sei o porque ja testei milhares de scripts, e acabei desenvolvendo um baseado nos que vi, mais não consigo achar o erro, pois ele não envia para o banco de dados e nem para a pasta.
AJUDEM PORFAVOR!

Ajax e form.

AJAX

<script type="text/javascript">
$(document).ready(function(){

$('#img').live('change',function(){
$('#visualizar').html('<img src="imgs/ajax-loader.gif" alt="Enviando..."/> Enviando...');
$('#formulario').ajaxForm({
target:'#visualizar'
}).submit();
});
})
</script>

FORMULÁRIO

Imagem:
<form id="formulario" method="post" enctype="multipart/form-data" action="function/upload.php">
<input type="file" id="img" name="img" />
</form>
<div id="visualizar"></div>



UPLOAD em php

<?php
include('conexao.php');
$pasta = "imgs/noticias/";

/* formatos de imagem permitidos */
$permitidos = array(".jpg",".jpeg",".gif",".png", ".bmp");

if(isset($_POST)){
$nome_imagem = $_FILES['img']['name'];
$tamanho_imagem = $_FILES['img']['size'];

/* pega a extensão do arquivo */
$ext = strtolower(strrchr($nome_imagem,"."));

/* verifica se a extensão está entre as extensões permitidas */
if(in_array($ext,$permitidos)){

/* converte o tamanho para KB */
$tamanho = round($tamanho_imagem / 1024);

if($tamanho < 1024){ //se imagem for até 1MB envia
$nome_atual = md5(uniqid(time())).$ext; //nome que dará a imagem
$tmp = $_FILES['img']['tmp_name']; //caminho temporário da imagem

/* se enviar a foto, insere o nome da foto no banco de dados */
if(move_uploaded_file($tmp,$pasta.$nome_atual)){
mysql_query("INSERT INTO cad_imgs (img) VALUES (".$nome_atual.")");
echo "<img src='imgs/noticias/".$nome_atual."' id='previsualizar'>"; //imprime a foto na tela
}else{
echo "Falha ao enviar";
}
}else{
echo "A imagem deve ser de no máximo 1MB";
}
}else{
echo "Somente são aceitos arquivos do tipo Imagem";
}
}else{
echo "Selecione uma imagem";
exit;
}

?>




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq