Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

BrunoHP

Problema ao enviar uma imagem

Recommended Posts

Estou com um problema de envio de imagens!

 

Obs: Essa msm script uso em outro site e funfa, sendo que salva uma imagem grande, media e a thumb... será que isso seria problema no servidor?

 

Edit: Sendo que imagens por exemplo de 800x600 funfa normal acima disso da esse erro.

 

Se alguem poder me ajudar irei ficar grato!

 

Erro:

 

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

 

[MySQL][ODBC 5.1 Driver][mysqld-5.0.87-community-nt]MySQL server has gone away

 

/webcontrol/gravarFotosPacientes.asp, line 53

 

Estou postando todas as scripts do arquivo que deu esse erro:

 

<!--#include file="conn.asp" -->
<!--#include file="security.asp" -->
<!--#include file="upload.asp" -->
<%

BRaction				= trim(request("action"))
BRidGaleria				= trim(request("id_galeria"))
BRidGaleriaImagem		= trim(request("id_galeria_imagem"))

BRtabela   = trim(request("tabela"))

BRtable 	= BRtabela&"_imagens"

if BRaction = "insert" then

if Session("insert") = "S" and BRaction = "insert" then

	BRlegenda				= FormatStr(trim(request("legenda")))
	BRico					= FormatStr(trim(request("img")))
	BRimg					= FormatStr(trim(request("img")))
	BRimgdestaque			= FormatStr(trim(request("img")))

   Set Uploader = New FileUploader
   Uploader.Upload()
   x=1
   For Each File In Uploader.Files.Items
       Path="/files/imagens/"&BRtabela&"/"
       NomeArq=day(now) & month(now) & year(now) & hour(now) & minute(now) & second(now) & x & ".jpg"  
       if x=1 then BRimg=NomeArq           

          Arquivo=Server.mappath(path)
  		   File.SaveToDisk Arquivo
          x=x+1
		       Next

			BRsql = "insert into "&BRtable&" ("

				BRsql = BRsql & "id_galeria,"
				BRsql = BRsql & "ico,"
				BRsql = BRsql & "img,"
				BRsql = BRsql & "imgdestaque,"
				BRsql = BRsql & "legenda"


			BRsql = BRsql & ") values ("

				BRsql = BRsql & ""&BRidGaleria&", "
				BRsql = BRsql & "'"&BRico&"', "
				BRsql = BRsql & "'"&BRimg&"', "
				BRsql = BRsql & "'"&BRimgdestaque&"', "
				BRsql = BRsql & "'"&BRlegenda&"')"

			set BRsqlInsert=conn.execute(BRsql)

			set BRrs=conn.execute("select id_galeria_imagens from "&BRtable&" where id_galeria="&BRidGaleria&" and img='"&BRimg&"' order by id_galeria_imagens desc")

			BRid_usuario			= Session("id_usuario")
			BRtpaction				= BRaction
			BRdata					= DataNow
			BRhora					= HoraNow
			BRtable_name			= BRtable
			BRid_registro			= BRrs("id_galeria_imagens")

			set BRlog=conn.Execute("insert into lt_log (id_usuario,action,data,hora,table_name,id_registro) values ("&BRid_usuario&",'"&BRtpaction&"','"&BRdata&"','"&BRhora&"','"&BRtable_name&"',"&BRid_registro&")")

			conn.close
			set conn = nothing

			Response.Redirect "resizeImgFotosPacientes.asp?tabela="&BRtabela&"&id_galeria="&BRidGaleria&"&id_galeria_imagem="&BRid_registro

		else

			BRimg = ""
			BRimgdestaque = ""

			BRsql = "insert into "&BRtable&" ("

				BRsql = BRsql & "id_galeria,"
				BRsql = BRsql & "ico,"
				BRsql = BRsql & "img,"
				BRsql = BRsql & "imgdestaque,"
				BRsql = BRsql & "legenda"


			BRsql = BRsql & ") values ("

				BRsql = BRsql & ""&BRidGaleria&", "
				BRsql = BRsql & "'"&BRico&"', "
				BRsql = BRsql & "'"&BRimg&"', "
				BRsql = BRsql & "'"&BRimgdestaque&"', "
				BRsql = BRsql & "'"&BRlegenda&"')"

			set BRsqlInsert=conn.execute(BRsql)

			set BRrs=conn.execute("select id_institucional from "&BRtable&" where cat="&BRcat&" and institucional='"&BRinstitucional&"' and versao='"&BRversao&"' order by id_institucional desc")

			BRid_usuario			= Session("id_usuario")
			BRtpaction				= BRaction
			BRdata					= DataNow
			BRhora					= HoraNow
			BRtable_name			= BRtable
			BRid_registro			= BRrs("id_galeria_imagens")

			set BRlog=conn.Execute("insert into lt_log (id_usuario,action,data,hora,table_name,id_registro) values ("&BRid_usuario&",'"&BRtpaction&"','"&BRdata&"','"&BRhora&"','"&BRtable_name&"',"&BRid_registro&")")

			conn.close
			set conn = nothing

			Response.Redirect "listarFotosPacientes.asp?tabela="&BRtabela&"&id_galeria="&BRidGaleria

		end if

else

		Response.Write "<script>alert('Volte e selecione uma imagem para ser enviada!'); document.location.href='listarFotosPacientes.asp?tabela="&BRtabela&"&id_galeria="&BRidGaleria&"';</script>"

end if

set Uploader = nothing

if BRaction = "delete" then

if Session("delete") = "S" and BRaction = "delete" then


if isNumeric(BRidGaleriaImagem) = true and BRidGaleriaImagem <> "" then

		set BRdel=conn.Execute("delete from "&BRtable&" where id_galeria_imagens="&BRidGaleriaImagem&"")

		BRid_usuario			= Session("id_usuario")
		BRtpaction				= BRaction
		BRdata					= DataNow
		BRhora					= HoraNow
		BRtable_name			= BRtable
		BRid_registro			= BRidGaleriaImagem

		set BRlog=conn.Execute("insert into lt_log (id_usuario,action,data,hora,table_name,id_registro) values ("&BRid_usuario&",'"&BRtpaction&"','"&BRdata&"','"&BRhora&"','"&BRtable_name&"',"&BRid_registro&")")

		conn.close
		set conn = nothing

		Response.Write "<script>alert('Imagem excluída com sucesso!'); document.location.href='listarFotosPacientes.asp?tabela="&BRtabela&"&id_galeria="&BRidGaleria&"';</script>"

		end if
else

		Response.Write "<script>alert('Dados inválidos!'); document.location.href='listarFotosPacientes.asp?tabela="&BRtabela&"&id_galeria="&BRidGaleria&"';</script>"

end if

else

Response.Write "<script>alert('Você não tem permissão para realizar esta operação DELETE!'); document.location.href='logout.asp';</script>"

end if


%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vendo a explicação sobre o erro, achei isso:

"A razão mais comum para o erro MySQL server has gone away é que o servidor esgotou o tempo limite e fechou a conexão.

...

Outra razão comum para receber o erro MySQL server has gone away é porque você executou um ``fechar'' em sua conexão MySQL a então tentou executar uma consulta na conexão fechada.

...

Você também pode obter estes erros se você enviar uma consulta incorreta ou muito grande ao servidor."

Fonte: http://dev.mysql.com/doc/refman/4.1/pt/gone-away.html

 

A linha do erro seria qual ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vendo a explicação sobre o erro, achei isso:

"A razão mais comum para o erro MySQL server has gone away é que o servidor esgotou o tempo limite e fechou a conexão.

...

Outra razão comum para receber o erro MySQL server has gone away é porque você executou um ``fechar'' em sua conexão MySQL a então tentou executar uma consulta na conexão fechada.

...

Você também pode obter estes erros se você enviar uma consulta incorreta ou muito grande ao servidor."

Fonte: http://dev.mysql.com/doc/refman/4.1/pt/gone-away.html

 

A linha do erro seria qual ?

 

Na linha 53 tem isso -> set BRsqlInsert=conn.execute(BRsql)

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode ser que o mysql ficou com a conexão aberta durante muito tempo sem receber nenhum comando, então ele simplesmente fechou a conexão

Altere a variável max_allowed_packet para um valor maior que o padrão (que é 16M) para que o mysqld possa responder a consultas que exigem o envio de pacotes maiores ao cliente sobre o protocolo em utilização - no Windows, 99,9% usa TCP/IP, no Linux, socket é mais rápido que TCP/IP.

 

OBS.: max_allowed_packet pode ser configurado em tempo de execução com SET (valores devem ser especificados em bytes) e no arquivo de configuração do MySQL - my.cnf ou my.ini.

 

e dá um response.write na sua string SQL, para ver o que esta sendo passado.

BRsql = "insert into "&BRtable&" ("

                                       BRsql = BRsql & "id_galeria,"
                                       BRsql = BRsql & "ico,"
                                       BRsql = BRsql & "img,"
                                       BRsql = BRsql & "imgdestaque,"
                                       BRsql = BRsql & "legenda"


                               BRsql = BRsql & ") values ("

                                       BRsql = BRsql & ""&BRidGaleria&", "
                                       BRsql = BRsql & "'"&BRico&"', "
                                       BRsql = BRsql & "'"&BRimg&"', "
                                       BRsql = BRsql & "'"&BRimgdestaque&"', "
                                       BRsql = BRsql & "'"&BRlegenda&"')"
response.write(BRsql)
response.end()

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode ser que o mysql ficou com a conexão aberta durante muito tempo sem receber nenhum comando, então ele simplesmente fechou a conexão

Altere a variável max_allowed_packet para um valor maior que o padrão (que é 16M) para que o mysqld possa responder a consultas que exigem o envio de pacotes maiores ao cliente sobre o protocolo em utilização - no Windows, 99,9% usa TCP/IP, no Linux, socket é mais rápido que TCP/IP.

 

OBS.: max_allowed_packet pode ser configurado em tempo de execução com SET (valores devem ser especificados em bytes) e no arquivo de configuração do MySQL - my.cnf ou my.ini.

 

e dá um response.write na sua string SQL, para ver o que esta sendo passado.

BRsql = "insert into "&BRtable&" ("

                                       BRsql = BRsql & "id_galeria,"
                                       BRsql = BRsql & "ico,"
                                       BRsql = BRsql & "img,"
                                       BRsql = BRsql & "imgdestaque,"
                                       BRsql = BRsql & "legenda"


                               BRsql = BRsql & ") values ("

                                       BRsql = BRsql & ""&BRidGaleria&", "
                                       BRsql = BRsql & "'"&BRico&"', "
                                       BRsql = BRsql & "'"&BRimg&"', "
                                       BRsql = BRsql & "'"&BRimgdestaque&"', "
                                       BRsql = BRsql & "'"&BRlegenda&"')"
response.write(BRsql)
response.end()

 

Acho muito exttranho pq imagem de 800x600 grava no tamanho que eu qser... acima disso so erro... como eu citei la em cima... não entendo o pq! Irei dar esse response dai postarei... desde já obrigado pela antenção de vcs..

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.