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

erro no php ao subir uma imagem para o m


Guest --jefferson andre da silva --

Pergunta

Guest --jefferson andre da silva --

Estou utilizando o php abaixo :

<?php
$conexao = mysql_connect("localhost", "root", "senhadeacesso") or die (mysql_error());

$associados_1 = mysql_select_db("xcomp",$conexao) or die (mysql_error());

//$listartudo = "SELECT codigo,razao FROM aciarp.associados";
//$resultado = mysql_query($listartudo,$conexao) or die (mysql_error());
//$resultado;

$razao         = $_POST['razao'];
$nome          = $_POST['nomefantasia'];
$cnpj          = $_POST['cnpj'];
$inscricao     = $_POST['inscricao'];
$endereco    = $_POST['endereco'];
$numero        = $_POST['numero'];
$bairro     = $_POST['bairro'];
$cidade     = $_POST['cidade'];
$estado     = $_POST['estado'];
$cep         = $_POST['cep'];
$telefone1     = $_POST['telefone1'];
$telefone2     = $_POST['telefone2'];
$celular     = $_POST['celular'];
$fax         = $_POST['fax'];
$email         = $_POST['email'];
$site         = $_POST['site'];
$contato     = $_POST['contato'];
$horario     = $_POST['horario'];
$ramo         = $_POST['ramo'];
$ponto         = $_POST['ponto'];
$fotosest    = $_POST['fotosest'];
$nomelogin    = $_POST['login'];
$senha         = $_POST['senha'];
//$data         = pegar a data atual

$fp = fopen($fotosest,"rb"); 
$arquivo_temp = fread($fp,filesize($fotosest)); 
fclose($fp); 
$arquivo_temp = addslashes($arquivo_temp); 

$sql = mysql_query("INSERT INTO cad_clientes (razao, nomefantasia, cnpj, inscricao, endereco, numero, bairro, cidade, estado, cep, telefone1, telefone2, celular, fax, email, site, contato, horario, ramodeatividade, ponto,fotoest, login, senha) VALUE ('$razao', '$nome', '$cnpj', '$inscricao', '$endereco', '$numero', '$bairro', '$cidade', '$estado', '$cep', '$telefone1', '$telefone2', '$celular', '$fax', '$email', '$site', '$contato', '$horario', '$ramo', '$ponto', '$arquivo_temp', '$nomelogin', '$senha')") or die (mysql_error());

if($sql) {
echo "O seu cadastro foi realizado com sucesso!";
}else{
echo "Estamos atualizando nosso banco de dados, tente novamente mais tarde";}

mysql_close($conexao);
?>

Aparece os seguintes erros :

Warning: fopen(C:\\Imagens\1 murales.jpg): failed to open stream: No such file or directory in /home/xcompbrasil/site/nome/inserir_associado.php on line 35

Warning: filesize(): Stat failed for C:\\Imagens\1 murales.jpg (errno=2 - No such file or directory) in /home/xcompbrasil/site/nome/inserir_associado.php on line 36

Warning: fread(): supplied argument is not a valid stream resource in /home/xcompbrasil/site/nome/inserir_associado.php on line 36

Warning: fclose(): supplied argument is not a valid stream resource in /home/xcompbrasil/site/nome/inserir_associado.php on line 37

alguém pode me ajudar a entender e a fazer subir as fotos.

Obrigado

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0
Guest jefferson andre da silva
Faça um select pegando o campo fotoest para ver. Lembre-se de que ele tem que ser do tipo BLOB para aceitar a foto.

Vou almoçar e 13:30 estou de volta.

Eu fiz isso e por dentro do mysql não aparece nada, como se o campo estivesse em branco.

Li em um artigo que ele deveria aparecer algo como um binario, mas não tenho certeza do que estou te dizendo.

Os demais campos estao funcionando corretamente, então acredito que o insert value estava funcionando.

Valeu

Link para o comentário
Compartilhar em outros sites

  • 0

Estou fazendo um teste aqui para te ajudar...

Cara aqui funcionou tudo direitinho. Na minha tabela aparece... [bLOB - 12 Bytes]

Eu fiz assim:

$str_sql = "INSERT INTO teste(foto)VALUES('$foto')";
$sql = mysql_query($str_sql) or die(mysql_error());
No seu caso seria...
$str_sql = "INSERT INTO cad_clientes(fotoest)VALUES('$foto')";
$sql = mysql_query($str_sql) or die(mysql_error());

Tente este código e veja se funciona.

Editado por Renato Penna
Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva

Vou tentar sua dica, enquanto isso como você faz para saber que o campo blob tem 12 bytes

Cara aqui funcionou tudo direitinho. Na minha tabela aparece... [bLOB - 12 Bytes]

Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva
Eu dei um select na tabela.

SELECT foto FROM teste

No meu caso estou checando o campo diretamente no servidor linux e não me aparece o tamanho do campo

não deveria aparecer alguma coisa quando se faz isso

Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva
Quando você faz...
SELECT fotoest FROM cad_clientes

...o que aparece ?

mysql> use xcomp;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> select fotoest from cad_clientes;

+---------+

| fotoest |

+---------+

| |

| |

| |

| |

+---------+

4 rows in set (0.00 sec)

Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva
Faça o seguinte. Execute este comando...
UPDATE cad_clientes SET fotoest=""

Depois disso refaça o upload da foto e veja se muda alguma coisa. Depois de executar esse comando, execute o SELECT também pela sua aplicação PHP para ver o que aparece nela.

Fiz os procedimentos e continua igual, deveria aparecer alguma coisa :-(

Da uma olhada neste link que aponta os campos do banco de dados http://www.xcompbrasil.com.br/nome/listar_associados.php

no teste que você fez aparece algo neste campo de foto :-(

Editado por jefferson andre da silva
Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva
Eu executei esse código...

$str_sql = "SELECT * FROM teste";
$sql = mysql_query($str_sql) or die(mysql_error());
echo mysql_result($sql,0,"foto");

e apareceu... juliana2.jpg

ou seja... deu certo.

Qual o nome da foto que você mandou para o banco ?

Vou testar este seu codigo

não deveria aparecer a foto que você enviou em vez do nome do arquivo ?

Editado por jefferson andre da silva
Link para o comentário
Compartilhar em outros sites

  • 0
Guest jefferson andre da silva
Não não, só aparece o nome da foto. Para fazer aparecer você deve colocar dentro da tag HTML (<img src='juliana2.jpg'>)

então já estava funcionando, pensei que a imagem entrava dentro de um banco de dados e depois eu usaria um comando para ela aparecer na tela.

Eu faça assim em tables no visual fox mas aqui to tomando uma pau rsrs

Vou fazer ele funcionar novamente para aparecer o nome da imagem e testarei com esta sua dica.

Obrigado pela ajuda

Link para o comentário
Compartilhar em outros sites

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,2k
×
×
  • Criar Novo...