Jump to content


Photo

Php Image Uploader


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

#1 waterboy

waterboy

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Masculino
  • Localidade:Piracicaba ~ Salto, Brazil
  • Interesses:PHP, Java, C, Hardware e Photoshop.
    Garotas, Futebol e Basquete.

Posted 04/06/2011, 21:36

Antes de fazer esse teste... vejam o video no link Video do Tutorial
upload-imagem.php
<?php
// Conexão com o banco de dados
$conn = @mysql_connect("localhost", "root", "p@ssw0rd") or die ("Problemas na conexão.");
$db = @mysql_select_db("thiago_cardoso", $conn) or die ("Problemas na conexão");

// Se o usuário clicou no botão cadastrar efetua as ações
if ($_POST['cadastrar']) {
	
	// Recupera os dados dos campos
	$nome = $_POST['nome'];
	$email = $_POST['email'];
	$foto = $_FILES["foto"];
	
	// Se a foto estiver sido selecionada
	

	
	if (!empty($foto["name"])) {
		
		// Largura máxima em pixels
		$largura = 900;
		// Altura máxima em pixels
		$altura = 900;
		// Tamanho máximo do arquivo em bytes
		$tamanho = 1000;

    	// Verifica se o arquivo é uma imagem
    	if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $foto["type"])){
     	   $error[1] = "Isso não é uma imagem.";
   	 	} 
	
		// Pega as dimensões da imagem
		$dimensoes = getimagesize($foto["tmp_name"]);
			
	
		// Verifica se a largura da imagem é maior que a largura permitida
		       if($dimensoes[0] > $largura) {
			       $error[2] = "A largura da imagem não deve ultrapassar ".$largura." pixels";
		       }

		// Verifica se a altura da imagem é maior que a altura permitida
		if($dimensoes[1] > $altura) {
			$error[3] = "Altura da imagem não deve ultrapassar ".$altura." pixels";
		}
		
		// Verifica se o tamanho da imagem é maior que o tamanho permitido
		if($arquivo["size"] > $tamanho) {
   		 	$error[4] = "A imagem deve ter no máximo ".$tamanho." bytes";
		}

		// Se não houver nenhum erro
		if (count($error) == 0) {
		
			// Pega extensão da imagem
			preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);

        	// Gera um nome único para a imagem
        	$nome_imagem = md5(uniqid(time())) . "." . $ext[1];

        	// Caminho de onde ficará a imagem
        	$caminho_imagem = "fotos/" . $nome_imagem;

			// Faz o upload da imagem para seu respectivo caminho
			move_uploaded_file($foto["tmp_name"], $caminho_imagem);
		
			// Insere os dados no banco
			$sql = mysql_query("INSERT INTO usuarios VALUES ('NULL', '".$nome."', '".$email."', '".$nome_imagem."')");
		
			// Se os dados forem inseridos com sucesso
			if ($sql){
				echo "Você foi cadastrado com sucesso.";
			}
		}
	
		// Se houver mensagens de erro, exibe-as
		if (count($error) != 0) {
			foreach ($error as $erro) {
				echo $erro . "<br />";
			}
		}
	}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro de usuário</title>
<link href="as-cores.css" rel="stylesheet" type="text/css" />
</head>

<body>
<fieldset>
<legend>Novo Usuário</legend>

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="cadastro" >
Nome:<br />
<input type="text" name="nome" /><br /><br />
Email:<br />
<input type="text" name="email" /><br /><br />
Foto de exibição:<br />
<input type="file" name="foto" /><br /><br />
<input type="submit" name="cadastrar" value="Cadastrar" />
</form>
</fieldset>
<br><br><br>


<fieldset>
<legend> Usuários Cadastrados </legend>
<?php
// Seleciona todos os usuários
$sql = mysql_query("SELECT * FROM usuarios ORDER BY nome");

// Exibe as informações de cada usuário
while ($usuario = mysql_fetch_object($sql)) {
	// Exibimos a foto
	echo "<BR><BR>";
	echo "<table border='2'>";
	echo "<tr><td><img src='fotos/".$usuario->foto."' alt='Foto de exibição' height='300' wight='100'></td></tr></table>";
	// Exibimos o nome e email
	echo "<table border='2'>";
	echo "<tr><td><b>Nome:</b> </td><td>" . $usuario->nome . "</td>";
	echo "<tr><td><b>Email:</b> </td><td>" . $usuario->email . "</td>";
	echo "</tr></table>";
}


?>

</fieldset>

</body>
</html>

Thiago Cardoso
Web Designer - Desenvolvedor
Blog: http://www.thnocard.blogspot.com
Cel: +55 19 96817602




1 user(s) are reading this topic

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

IPB Skin By Virteq