Ir para conteúdo

POWERED BY:

Arquivado

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

Neji

[Resolvido] insercao de imagens e pdf

Recommended Posts

boas mais uma vez

 

e o seguinte eu estou querendo inserir o url de uma imagem e ao mesmo tempo de um documento pdf na minha base de dados mas o que me acontece e que insere 2 registos em que no 1 insere so a imagem e no seguinte insere so o documento pdf, o nome do campo onde vai ficar o url do pdf e anexo

 

 

<form  method="post" enctype="multipart/form-data" name="cadastro" onSubmit="return validaForm()" action="inserircomunicado2.asp">

<%
SET RS=Conexao.Execute("COMUNICADO")

IF RS.EOF THEN

Response.Write "<script type=""text/javascript"">" & vbCrLf
Response.Write "<!--" & vbCrLf
Response.Write "alert ('Ainda Nao tem registos Inseridos');" & vbCrLf
Response.Write "-->" & VbCrLf
Response.Write "</script>" & vbCrLf



			Set RS = Conexao.Execute("SELECT * FROM comunicado ")
	END IF		
			
		%>
<center>

<br>

<div id="container">
<table border=2 >

<td style="border-left-width: 1px;border-left-style: solid;">Titulo:</td><td><input type="text" name="titulo"></td>

<tr>

<td>Texto:</td><td><input type="hidden" id="FCKeditor1" name="texto" value="" style="display:none" />
	 <input type="hidden" id="FCKeditor1___Config" style="display:none" />
	 <iframe id="FCKeditor1___Frame" src="fckeditor/editor/fckeditor.html?InstanceName=texto&Toolbar=Default" width="700%" height="400" frameborder="0" scrolling="no"></iframe> <br />


</td>
</tr>

<tr>
<td>Data Inicio:</td><td><input type="text" name="datai" ></td>
</tr>
<tr>
<td>Data Fim:</td><td><input type="text" name="dataf" ></td>
</tr>
<tr>
<th>Insira o Endereco Imagem:</th><td><input type="file" size="40" name="img00" /></td></tr><tr>
	   <th>Nome da Imagem:</th><td><input type="text" size="40" name="text2" /></tr>
<th>Insira o Endereco Anexo:</th><td><input type="file" size="40" name="img00" /></td></tr><tr>
	   <th>Nome do Anexo:</th><td><input type="text" size="40" name="anexo" /></tr>
</table>

<input type="hidden" name="codigo" value="codigo">

<p>
<p>


<input name="enviar" type="submit" value="enviar">

</form>
</table>

e

 

<!--#include file="conn.asp" -->
<html>
<head>
<title>AspUpload : Upload Simples</title>
</head>
<%
' Cria uma instância do controle
Set objUpload = Server.CreateObject("Dundas.Upload.2")

objUpload.UseUniqueNames = False

' Limita o tamanho máximo do ficheiro em 1MB

objUpload.MaxFileSize = 22550000

' Salva o ficheiro
objUpload.Save("c:\Inetpub\wwwroot\estagio")


For Each File in objUpload.Files
	ficheiro= File.Path
	
	titulo1=objUpload.Form("titulo")
	texto1=objUpload.Form("texto")
datai1=objUpload.Form("datai")
dataf1=objUpload.Form("dataf")  

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")
	sql = "insert into comunicado(titulo,texto,datai,dataf,imagens,anexo) values ('"&titulo1&"','"&texto1&"','"&datai1&"','"&dataf1&"','"&ficheiro&"','"&ficheiro&"')"
	 Conexao.Execute(SQL)
Next

If Err <> 0 Then
Response.Write "Erro. " & Err.Description
Else
Response.Write "Upload realizado com sucesso."
End If

Set objUpload = Nothing
Conexao.Close
%>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

For Each File in objUpload.Files
	ficheiro =  ficheiro & ",'" &File.Path & "'"
Next
	titulo1=objUpload.Form("titulo")
	texto1=objUpload.Form("texto")
datai1=objUpload.Form("datai")
dataf1=objUpload.Form("dataf")  

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")
	sql = "insert into comunicado(titulo,texto,datai,dataf,imagens,anexo) values ('"  & titulo1 & "','" & texto1 & "','" & datai1 & "','" & dataf1 & "'"
	 Conexao.Execute(SQL)

Recupere os dois nomes do arquivo antes de inserir o registro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é gerado algum erro , poste a linha e o numero do erro ???

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ligação para o servidor foi reposta enquanto a página estava a ser carregada.

 

 

 

 

 

 

 

A ligação à rede foi interrompida enquanto era negociada uma ligação. Por favor tente novamente.

 

 

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

<html>

<head>

<title>AspUpload : Upload Simples</title>

</head>

<%

' Cria uma instância do controle

Set objUpload = Server.CreateObject("Dundas.Upload.2")

 

 

objUpload.UseUniqueNames = False

 

' Limita o tamanho máximo do ficheiro em 1MB

 

objUpload.MaxFileSize = 22550000

 

 

' Salva o ficheiro

objUpload.Save("c:\Inetpub\wwwroot\estagio")

 

For Each File in objUpload.Files

ficheiro = ficheiro & ",'" &File.Path& "'"

Next

titulo1=objUpload.Form("titulo")

texto1=objUpload.Form("texto")

datai1=objUpload.Form("datai")

dataf1=objUpload.Form("dataf")

 

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")

sql = "insert into comunicado(titulo,texto,datai,dataf,imagens,anexo) values ('" & titulo1 & "','" & texto1 & "','" & datai1 & "','" & dataf1 & "')"

 

response.write sql

Next

 

If Err <> 0 Then

Response.Write "Erro. " & Err.Description

Else

Response.Write "Upload realizado com sucesso."

End If

 

Set objUpload = Nothing

Conexao.Close

%>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o conteudo do conn.asp, e retire o OnError,

você deu um response.write na sua string SQL, para ver o k esta sendo passado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao da diz o mesmo mas nao e problema do servidor

 

For Each File in objUpload.Files
	ficheiro =  ficheiro & ",'" &File.Path & "'"
Next
	titulo1=objUpload.Form("titulo")
	texto1=objUpload.Form("texto")
datai1=objUpload.Form("datai")
dataf1=objUpload.Form("dataf")  

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")
	sql = "insert into comunicado(titulo,texto,datai,dataf,imagens,anexo) values ('"  & titulo1 & "','" & texto1 & "','" & datai1 & "','" & dataf1 & "'"
	 Conexao.Execute(SQL)

Next

response.write sql

Set objUpload = Nothing

Conexao.Close
%>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta testando no localhost ???

faz assim:

response.write sql
response.end()

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao deu, sim estou a testar no localhost

 

For Each File in objUpload.Files
	ficheiro =  ficheiro & ",'" &File.Path & "'"
Next
	titulo1=objUpload.Form("titulo")
	texto1=objUpload.Form("texto")
datai1=objUpload.Form("datai")
dataf1=objUpload.Form("dataf")  

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")
	sql = "insert into comunicado(titulo,texto,datai,dataf,imagens,anexo) values ('"  & titulo1 & "','" & texto1 & "','" & datai1 & "','" & dataf1 & "'"
	 Conexao.Execute(SQL)

Next

response.write sql
response.end()

Set objUpload = Nothing

Conexao.Close

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o resultado da SQL ?

todos os campos saun txt, mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ligação para o servidor foi reposta enquanto a página estava a ser carregada.

 

A ligação à rede foi interrompida enquanto era negociada uma ligação. Por favor tente novamente.

 

voltou a dizer isso nao me escreve a instrucao

 

todos os campos na minha bd são nchar menos o cod id mas esse e gerado automaticamente...

Compartilhar este post


Link para o post
Compartilhar em outros sites

outras paginas com acesso a banco de dados, geram este erro tb ?

seu browser esta configurado para exibir mensagens de erro HHTP amigaveis ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

desabilite o seu browser para nao exibir mensagens de erro HHTP amigaveis.

 

qaul o conteduo de conn.asp

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%

 

 

Set Conexao = Server.CreateObject("ADODB.Connection")

 

Conexao.Open "Provider=sqloledb;Data Source=BOOK\SQLEXPRESS;Initial Catalog=basedados;User Id=eu;Password=xxx"

 

 

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você desabilitou a opçao de exibir mensagens de erro HHTP amigaveis.

 

e qual o erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ligação interrompida

 

 

A ligação para o servidor foi reposta enquanto a página estava a ser carregada.

 

 

A ligação à rede foi interrompida enquanto era negociada uma ligação. Por favor tente novamente.

 

 

 

xanburzum eu consigo inserir so uma imagem mas se quero inserir uma imagem com anexo da maneira como disse inicialmente insere me 1º uma imagem com todos os campos menos o anexo e a seguir insere me outro registo com todos campos menos a imagem ou seja no 1º insere a imagem e no 2º o anexo e mais os outros campos

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se o arquivo que esta tentando inserir nao ultrapassou o limite do Upload,

e você pode por exemplo, recuperar todos os valores e inserir de uma vez, você pode até fazer um loop

e insere multiplos registros...

dá uma pesquisada no forum, k tem bastantes exemplos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao ultrapassou tenho a certeza

 

 

como te dizia assim insere 2 linhas de codigo uma para as imagens e outra para o anexo

<!--#include file="conn.asp" -->
<html>
<head>
<title>AspUpload : Upload Simples</title>
</head>
<%
' Cria uma instância do controle
Set objUpload = Server.CreateObject("Dundas.Upload.2")

objUpload.UseUniqueNames = False

' Limita o tamanho máximo do ficheiro em 1MB

objUpload.MaxFileSize = 22550000
' Salva o ficheiro
objUpload.Save("c:\Inetpub\wwwroot\estagio")

For Each File in objUpload.Files
	ficheiro= File.Path
	titulo1=objUpload.Form("titulo")
	texto1=objUpload.Form("texto")
datai1=objUpload.Form("datai")
dataf1=objUpload.Form("dataf")  

ficheiro = replace(replace(ficheiro,"\","/"),"c:/Inetpub/wwwroot/", "http://localhost/")
	sql = "insert into comunicado(titulo,texto,datai,dataf,imagens) values ('"&titulo1&"','"&texto1&"','"&datai1&"','"&dataf1&"','"&ficheiro&"','"&ficheiro&"')"
	 Conexao.Execute(SQL)
Next

If Err <> 0 Then
Response.Write "Erro. " & Err.Description
Else
Response.Write "Upload realizado com sucesso."
End If

Set objUpload = Nothing
Conexao.Close
%>
</html>

 

a unica coisa que alterei foi nesta linha

 

sql = "insert into comunicado(titulo,texto,datai,dataf,imagens) values ('"&titulo1&"','"&texto1&"','"&datai1&"','"&dataf1&"','"&ficheiro&"','"&ficheiro&"')"

acrescentei

"&ficheiro&"'

Compartilhar este post


Link para o post
Compartilhar em outros sites

esta errado o INSERT, você tem 5 campos e esta passando seis VALUES...

 

 

insert into comunicado(titulo,texto,datai,dataf,imagens) values ('"&titulo1&"','"&texto1&"','"&datai1&"','"&dataf1&"','"&ficheiro&"','"&ficheiro&"')

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.