Ir para conteúdo
Fórum Script Brasil
  • 0

PROBLEMA AO GRAVAR O "DIRECTORY SEPARATOR" BANCO DE DADOS


Wilson Tamarozzi Jr.

Pergunta

I ai galera,

Gostaria de uma ajuda, eu tenho um codigo para upload de imagens, mas o problema que o codigo ta funcionando mas na hora de gravar o endereço da imagem no banco ele ta tirando os "DIRECTORY SEPARADOR" ou "/" ai na hora de resgata vira "cacá" e não condigo, gostaria muito de uma ajuda para revisar o codigo, desde de já agradeço.

Deixando claro que o "DS" e outros como "UPLOAD_DIR" são definições que fiz das pasta onde vão salvar, ai vai o codigo, espero que um bom espirito me ajude.

public static function insere()

{

//definições da imagem

$_UP['endereco'] = UPLOAD_DIR . DS . IMAGEM_DIR . DS. $_POST['img_categoria'] .DS;

$_UP['tamanho'] = 1024 * 1024 * 1024 * 1024 * 2; //maxímo 4MB

$_UP['extensoes'] = array('jpg','jpeg','gif','bmp','png','tiff','raw','svg');

$_UP['renomeia'] = IMG_RENOMEIA;

//pega as informações originais da imagem

$img_nome_original = $_FILES['img_arquivo']['name'];

$img_tamanho_original = $_FILES['img_arquivo']['size'];

$img_extensao_original = $_FILES['img_arquivo']['type'];

//possíveis erros

$_UP['erros'][0] = 'Não houve erro';

$_UP['erros'][1] = 'O arquivo no upload é maior do que o limite do PHP';

$_UP['erros'][2] = 'O arquivo ultrapassa o limite de tamanho especifiado no HTML';

$_UP['erros'][3] = 'O upload do arquivo foi feito parcialmente';

$_UP['erros'][4] = 'Não foi feito o upload do arquivo';

//verifica se houve erro

if ($_FILES['img_arquivo']['error'] != 0)

{

return false;

}

else

{

//recebe a extensão original da imagem em letra minuscula

$img_nome = $_FILES['img_arquivo']['name'];

$img_separador = explode('.',$img_nome);

$extensao = strtolower(end($img_separador));

//$extensao = strtolower(end(explode('.',$_FILES['img_arquivo']['name'])));

//verifica extensão

if (array_search($extensao, $_UP['extensoes']) === false)

{

return false;

}

//verifica o tamanho

else if ($_UP['tamanho'] < $_FILES['img_arquivo']['size'])

{

return false;

}

//verifica se ira renomar

else if ($_UP['renomeia'] === true)

{

$img_nome = time().'.'.$extensao;

}

//verifica se a imagem existe na pasta para coloca (0),(1),(2) ...

for ($incremento = 0; file_exists(UPLOAD_DIR .DS. IMAGEM_DIR .DS. $_POST['img_categoria'] .DS. $img_nome) ; $incremento++)

{

$img_nome = $img_separador[0].'('.$incremento.').'.$extensao;

}

//move o arquivo para pasta

if (move_uploaded_file($_FILES['img_arquivo']['tmp_name'], $_UP['endereco'] . $img_nome))

{

$sql_insere = "INSERT INTO ".TB_IMAGEM." (

`imagem_codigo` ,

`usuario_codigo` ,

`imagem_nome_original` ,

`imagem_tamanho_original` ,

`imagem_extensao_original` ,

`imagem_nome` ,

`imagem_titulo` ,

`imagem_categoria` ,

`imagem_menssagem` ,

`imagem_endereco`

)

VALUES (

NULL ,

'1',

'".$img_nome_original."',

'".$img_tamanho_original."',

'".$img_extensao_original."',

'".$img_nome."',

'".$_POST['img_titulo']."',

'".$_POST['img_categoria']."',

'".$_POST['img_menssagem']."',

'".$_UP['extensao'].$img_nome."'

)";

$instancia = new manipula_sql();

$instancia -> insere($sql_insere);

if ($instancia -> content === true)

{

return true;

}

else

{

return false;

}

}

else

{

//correu tudo certo, mas houve problema na hora de mover a imagem

return false;

}

}

}

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,1k
×
×
  • Criar Novo...