Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E ai rapaziada beleza?
Seguinte, comecei a tentar desenvolver um script de cadastro com imagem. Até ai tranquilo está funcionando 100%. Porém preciso verificar se o usuário já existe no banco. Dei uma procurada achei algumas coisas aqui no forúm porém continuei com dúvida pois não consegui por no meu script. Segui abaixo o meu código:
>
<?php include "conexao.php"; ?>
<?php
// Conexão com o banco de dados
$conn = @mysql_connect("localhost", "root", "123") or die ("Problemas na conexão.");
$db = @mysql_select_db("noticias", $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"];
$senha = $_POST["senha"];
// Se a foto estiver sido selecionada
if (!empty($foto["name"])) {
// Largura máxima em pixels
$largura = 5000;
// Altura máxima em pixels
$altura = 4000;
// 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 ('', '".$nome."', '".$email."', '".$senha."', '".$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 />";
}
}
}
}
?><html xmlns="[http://www.w3.org/1999/xhtml">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form enctype="multipart/form-data" name="cadastro" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
Nome:
<input type="text" name="nome" id="nome" />
Email:
<input type="text" name="email" id="email" />
Senha:
<input type="password" name="senha" id="senha" />
Foto:
<input type="file" name="foto" id="foto" />
<input type="submit" name="cadastrar" value="Enviar" />
</form>
</body>
</html>
Esse script de upload já peguei pronto. Assim coloquei e adaptei para o que eu precisava.
Se puderem me dar uma ajuda ai fico grato.
Abração!
Carregando comentários...