Upload de Imagens com usuarios em sessão iniciada

PHP

29/08/2014

Boa noite a Todos!
mais uma vez estou com uma dificuldade em Phph e Mysql
estou tentando digitar um código que adiciona uma imagem de um usuario que está com sessão iniciada
e estou tendo um erro do tipo " Unknown column '9caf91660ed276dab7530f898c7eaf7f.jpg' in 'field list' "
e nÃo manda a imagem para o bamco de dados só para a pasta que irá armazenar a imagem
se alguém poder ajudar-me agradecerei bastante! estou passando o Código.


<?php
session_start();
$conexao = mysqli_connect("localhost","root","") or print(mysqli_connect_errno());
mysqli_select_db($conexao,"utilizador");

if(isset($_POST['enviar_img'])){
//Recupera os dados dos campos

$imagem= $_FILES['imagem'];

// se a foto ser selecionada 
if(!empty($imagem['name'])) {
//largura máxima em pixels
$largura = 7400;
// Altura máxima em pixeis
$altura = 7400;
//tamanho máximo do arquivo em bytes
$tamanho = 1522389;

//Verifica se o arquivo é uma Imagem

if(!preg_match("/^image\/(pjpej|jpeg|png|gif|bmp)$/",$imagem["type"]))
{
$error[1]= "O arquivo selecionado não é uma imagem!";

}//fecha o if(!preg_match)

//Pega as dimensões da imagem
$dimensoes = getimagesize($imagem["tmp_name"]);

//Verifica se a largura da imagem é maior que a largura permitita

if($dimensoes[0] > $largura){
$error[2] = "Largura da imagem não deve Ultrapassar".$largura."pixels";

}//fim do if($dimensoes[0])

// verfica se a altura da imagem é maior que a altura permitida
if($dimensoes[1] > $altura){
$error[3] = "a Altura selecionada não deve ultrapassar".$altura."pixels";

} // fim do if ($dimensoes[1] > $altuara)


// verfica se  o tamanho da imagem da imagem é maior que o tamnho permitido

if($imagem["size"] > $tamanho) {
$error[4] = "A imagem deve ter no máximo".$tamanho."bytes";

}// fim do if($imagem["size"] > $tamanho)

}//fim do if(!empty)

//se não houver nenhum erro 

if(isset($error)== 0){

preg_match("/\.(gif|bmp|png|jpg|jpeg)$/i",$imagem["name"],$ext);

//gera um nome único para imagem 

$nome_imagem = md5(uniqid(time())).".".$ext[1];

//Caminho onde firá a imagem 
$caminho_imagem = "Database_image_user/".$nome_imagem;

// Faz o upload da imagem para seu respectivo caminho_imagem
move_uploaded_file($imagem["tmp_name"],$caminho_imagem);


// Insere os dados no banco
$sql = mysqli_query($conexao,"UPDATE utilizador.usuario SET imagem = $nome_imagem Where  email = '?' and senha = '?'")or print(mysqli_error($conexao)); // tentei usar na cláusula where com email = {$_SSESSION['email']}) and senha ={$_SSESSION['senha']}) está dando erro de sintaxe
//se o dados forem inseridos com sucesso

if($sql){
echo "Imagem adicionada com sucesso!";
  }
 }// fim do if(count($error)== 0)

 // se houver mensagens de erro exibea-as 
 if (isset($error)!=0){
   foreach ($error as $erro) {
      echo $erro."</br>";
   }
 }
}//fim do if(cadastrar)

Israel Bango

Israel Bango

Curtidas 0

Respostas

Ronaldo Lanhellas

Ronaldo Lanhellas

29/08/2014

Tente adicionar uma aspas no nome da imagem do UPDATE, isso pode estar causando confusão no compilador:

UPDATE utilizador.usuario SET imagem = '$nome_imagem' Where  email = '?' and senha = '?'
GOSTEI 0
Israel Bango

Israel Bango

29/08/2014

Roanaldo Lanhellas Obrigado pela ajuda já não está dando aquele erro vem já escrita a mensagem imagem adicionada com sucesso, mais não
faz a inserção no Banco! podes dar mais uma ajuda? Please!
GOSTEI 0
POSTAR