Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera, veja o script abaixo:
<?php
session_start();
include "functions.php";
session_checker();
?>
<?php
// Conex? com o banco de dados
$conn = @mysql_connect("localhost", "XXXXX", "XXXXX") or die ("Problemas na conex?.");
$db = @mysql_select_db("mooze_cadastro", $conn) or die ("Problemas na conex?");
// Se o usu?io clicou no bot? cadastrar efetua as a?es
if ($_POST['cadastrar']) {
// Recupera os dados dos campos
$foto = $_FILES["foto"];
// Se a foto estiver sido selecionada
if (!empty($foto["name"])) {
// Largura m?ima em pixels
$largura = 150;
// Altura m?ima em pixels
$altura = 180;
// Tamanho m?imo do arquivo em bytes
$tamanho = 100000000;
// Verifica se o arquivo ?uma imagem
if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $foto["type"])){
$error[1] = "Isso n? ?uma imagem.";
}
// Pega as dimens?s 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? 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? deve ultrapassar ".$altura." pixels";
}
// Verifica se o tamanho da imagem ?maior que o tamanho permitido
if($foto["size"] > $tamanho) {
$error[4] = "A imagem deve ter no m?imo ".$tamanho." bytes";
}
// Se n? houver nenhum erro
if (count($error) == 0) {
// Pega extens? da imagem
preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);
// Gera um nome ?ico 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(foto) VALUES ('".$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?io</title>
</head>
<body>
<h1>Cadastro de Usu?io</h1>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="cadastro" >
<br /><br />
Foto de exibi?o:<br />
<input type="file" name="foto" /><br /><br />
<input type="submit" name="cadastrar" value="Cadastrar" />
</form>
</body>
</html>
Pois é, ele está funcionando bem, o problema é que ele upa a imagem e a imagem fica:
http://seusite.com/URLDAFOTO.jpg em vez de http://seusite.com/fotos/URLDAFOTO.jpg
E também tem um problema grave: ele não grava na tabela do usuário logado, ele cria um novo usuário e grava o caminho da foto.
Aguardo resposta, por favor, ajude-me.
Ps: a inicial, era um cód. pra cadastrar usuários com foto, mas eu quero que ele apenas coloque uma foto no perfil do usuário. Por favor, ajudem.
Carregando comentários...