upload Imagem (PHP + SQL SERVER)
Srs (a). bom dia.
Estou com um problema em um determinado script. No upload de fotos, faço da seguinte forma.
TABELA DO BD:
TRANSFORMAÇÃO DO CAMPO $_FILES:
SCRIPT DE INSERT:
O PROBLEMA É QUE NÃO INSERTA NO BANCO SEMPRE ME RETORNA O ERRO NUM TRACE ASSIM :
Operand type clash: text is incompatible with image php;
SE ALGUÉM PODER ME AJUDAR, SERÁ DE GRANDE VALIA.
AGRADECIDO.
Estou com um problema em um determinado script. No upload de fotos, faço da seguinte forma.
TABELA DO BD:
CODARQUIVO int CODCOLIGADA int CODLOCAL int CODATENDIMENTO int CODCOLIGADAATENDENTE int CODATENDENTE int NOMEARQUIVO varchar DETALHESARQUIVO varchar ARQUIVO image TAMANHOARQUIVO RMDVALOR4 CODCOLIGADAATENDATUAL int CODATENDENTEATUAL int DATAULTIMAALTERACAO datetime TIPOALTERACAO varchar RECCREATEDBY varchar RECCREATEDON datetime RECMODIFIEDBY varchar RECMODIFIEDON datetime
TRANSFORMAÇÃO DO CAMPO $_FILES:
$foto = $_FILES['ffFoto'];
$nome = $foto['name'];
$tipo = $foto['type'];
$tamanho = $foto['size'];
$conteudo = file_get_contents($foto['tmp_name']);
$data = unpack("H*hex", $conteudo);
$texto = "0x".$data['hex'];
SCRIPT DE INSERT:
public function cadastroArqAtendimento($param1,$param2,$param3,$param4,$param5,$param6,$param7,$param8,$param9){
$start = $this->conexao->prepare("
INSERT INTO HATENDIMENTOARQUIVOSANEXOS
(CODARQUIVO,CODCOLIGADA,CODLOCAL,CODATENDIMENTO,CODCOLIGADAATENDENTE,CODATENDENTE,NOMEARQUIVO,DETALHESARQUIVO,ARQUIVO,TAMANHOARQUIVO,
CODCOLIGADAATENDATUAL,CODATENDENTEATUAL,DATAULTIMAALTERACAO,TIPOALTERACAO,RECCREATEDBY,RECCREATEDON,RECMODIFIEDBY,RECMODIFIEDON)
VALUES (?, 1, ?, ?, 1, ?, ?, 'ARQUIVO ANEXO', ?, ?, 1, ?, GETDATE(), 'Adicionado', ?, GETDATE(), null, null)
");
$start->bindValue(1,$param1);
$start->bindValue(2,$param2);
$start->bindValue(3,$param3);
$start->bindValue(4,$param4);
$start->bindValue(5,$param5);
$start->bindValue(6,$param6,PDO::PARAM_LOB);
$start->bindValue(7,$param7);
$start->bindValue(8,$param8);
$start->bindValue(9,$param9);
$start->execute();
return $start->errorCode();
}
O PROBLEMA É QUE NÃO INSERTA NO BANCO SEMPRE ME RETORNA O ERRO NUM TRACE ASSIM :
Operand type clash: text is incompatible with image php;
SE ALGUÉM PODER ME AJUDAR, SERÁ DE GRANDE VALIA.
AGRADECIDO.
Brunno Sena
Curtidas 0
Respostas
Jothaz
18/11/2015
Opinar em um SQl deste tamnahho sem entender o cenário ou debugar é osso.
Qual o campo da tabela recebe o arquivo?
Você tem certeza que o comadno:
Esta correto. O campo imagem é o param 6? Não seria o 9?
Qual o campo da tabela recebe o arquivo?
Você tem certeza que o comadno:
$start->bindValue(6,$param6,PDO::PARAM_LOB);
Esta correto. O campo imagem é o param 6? Não seria o 9?
GOSTEI 0
Brunno Sena
18/11/2015
Opinar em um SQl deste tamnahho sem entender o cenário ou debugar é osso.
Qual o campo da tabela recebe o arquivo?
Você tem certeza que o comadno:
Esta correto. O campo imagem é o param 6? Não seria o 9?
Qual o campo da tabela recebe o arquivo?
Você tem certeza que o comadno:
$start->bindValue(6,$param6,PDO::PARAM_LOB);
Esta correto. O campo imagem é o param 6? Não seria o 9?
Obrigado, pela resposta, mas o campo de imagem, é o CAMPO ARQUIVO, NO INSERT. OS CAMPOS MANUALMENTE COLOCADOS, NÃO SÃO CONTADOS COMO PARAMETROS. SOMENTE OS QUE ESTÃO COM O "?". OU SEJA, CONTADO, ELE ME RETORNA O PARAMETRO 6.
GOSTEI 0
Jothaz
18/11/2015
Gravar imagem em bd é chato em qualquer linguagem.
Eu faria um teste com dabela com somente um id e o campo imagem para confirmar que o processo de gravação da imagem esta ok.
E depois se funcionasse, gravaria todos os campo.
Sei que trabalhoso e cansativo, mas não existe almoço gratis. kkkkk
Eu faria um teste com dabela com somente um id e o campo imagem para confirmar que o processo de gravação da imagem esta ok.
E depois se funcionasse, gravaria todos os campo.
Sei que trabalhoso e cansativo, mas não existe almoço gratis. kkkkk
GOSTEI 0
Brunno Sena
18/11/2015
Gravar imagem em bd é chato em qualquer linguagem.
Eu faria um teste com dabela com somente um id e o campo imagem para confirmar que o processo de gravação da imagem esta ok.
E depois se funcionasse, gravaria todos os campo.
Sei que trabalhoso e cansativo, mas não existe almoço gratis. kkkkk
Eu faria um teste com dabela com somente um id e o campo imagem para confirmar que o processo de gravação da imagem esta ok.
E depois se funcionasse, gravaria todos os campo.
Sei que trabalhoso e cansativo, mas não existe almoço gratis. kkkkk
Esse teste foi feito, sem passar parametros, colocando os valores manualmente, e deu certo, acredito que o problema esteja na verdade em como passar o parametro, e é justamente isso que quero saber como passar parametros deste tipo.
Agradecido, mais alguém ???
GOSTEI 0