Ir para conteúdo

POWERED BY:

Arquivado

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

claytonprog

com aspSmartUpload

Recommended Posts

Pessoal! Estou com problemas neste código:

 

Formulario de Cadastro

<form action="upload.asp" method="post" enctype="multipart/form-data">
		
		
<td>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
	<tr>
		<td width="121">
		<p align="right"><b>
						<font size="2">Título:   </font></b></td>
		<td>
						<font face="Verdana">
		<input type="text" name="titulo" size="32" ></font></td>
	</tr>
	<tr>
		<td width="121">
		<p align="right"><b>
						<font size="2">Descrição:</font></b></td>
		<td>
						<textarea name="descricao" cols="49" rows="8"></textarea></td>
	</tr>
	<tr>
		<td width="121" height="28">
		<p align="right"><b>
						<font size="2" color="#800000">Imagem:</font></b></td>
		<td height="28">
						<input name="arquivo1" type="file" class="style10" size="26" /></td>
	</tr>
	<tr>
		<td width="121">
		 </td>
		<td>
						<font face="Verdana" size="2" color="#FF0000"><br>Obs: Só é permitido arquivos 
com extensões </font><font face="Verdana" size="2">.jpg</font><font face="Verdana" size="2" color="#FF0000"> 
ou .</font><font face="Verdana" size="2">gif <font color="#FF0000">e o tamanho 
						máximo do arquivo não deve ultrapassar </font>1.8 MB.</font></td>
	</tr>
	<tr>
		<td width="121">
		 </td>
		<td>
						 </td>
	</tr>
	<tr>
		<td width="121">
		<b><font face="Verdana" size="2" color="#800000">Anexar arquivo:</font></b></td>
		<td>
						<input name="arquivo" type="file" class="style10" size="26" /></td>
	</tr>
	<tr>
		<td width="121">
		<p align="right"><b><font face="Verdana" size="2" color="#800000"> </font></b></td>
		<td>
						<font face="Verdana" size="2" color="#FF0000"><br>Obs: Só é permitido arquivos 
com extensões </font><font face="Verdana" size="2">.zip, .rar</font><font face="Verdana" size="2" color="#FF0000">, </font>
						<font face="Verdana" size="2"> 
						doc</font><font face="Verdana" size="2" color="#FF0000"> 
ou .</font><font face="Verdana" size="2">pdf <font color="#FF0000">e o tamanho 
máximo do arquivo não deve ultrapassar </font>1.8 MB.</font></td>
	</tr>
</table>
<p><input type="submit" name="enviar" value="Enviar" /></p>
<p> <th width="5" align="left" valign="middle" scope="col"> </th>
</tr>
<tr>

</form>

 

 

Formulário de envio

 

<%
Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, sql, verifica
Dim mySmartUpload, intCount, File, descricao, nome, titulo

Set objConn =  Server.CreateObject("ADODB.Connection")
objConn.Open "DBQ=" & Server.MapPath("db/downloads.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

On error Resume Next

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.AllowedFilesList = "jpg,gif,doc,zip,rar,pdf"
mySmartUpload.DeniedFilesList = "exe,bat,cab,swf,asp,aspx,htm,html,png"
mySmartUpload.MaxFileSize = 350000
mySmartUpload.Upload


		
For Each File in mySmartUpload.Files

titulo=mySmartUpload.Form("titulo")
descricao=mySmartUpload.Form("descricao")
nome=File.FileName


Next

If Err.number <> 0 Then

Response.Write("<p><br><font face=""Verdana"" size=""2""><br><br>Um dos seguintes erros aconteceu: você tentou enviar um arquivo cuja terminação não é .zip, .rar e nem .pdf Ou então o arquivo que você enviou é maior que 15.000 bytes(8 kb. ). A operação foi cancelada. Por favor tente de novo. ")
response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
response.write "<meta http-equiv='refresh' content='5; url=downloads_full.asp'/>"

response.end

end if


sql = "SELECT * FROM tblproducts WHERE productfile = '"&nome&"'"
Set verifica = objConn.Execute(sql)


		 

If NOT verifica.EOF Then
	Response.Write "Já existe um arquivo com este nome, tente outro!"
	response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
	response.write "<meta http-equiv='refresh' content='1; url=downloads_full.asp'/>"

Else
	strQuery = "INSERT INTO tblproducts (productname,productdescription,productfile) VALUES ('"&titulo&"','"&descricao&"','"&nome&"')"
	objRs = ObjConn.Execute(strQuery)
	intCount = mySmartUpload.Save("Downloads")
				
End If




objConn.close
Set verifica = Nothing
Set objConn = Nothing
Set ObjRs = Nothing


	  Response.Write("Arquivo <b>" & File.FileName & "</b> ")
	  Response.Write "Extensão do arquivo: " & File.FileExt & "<br>"
	  Response.Write "Tamanho do arquivo: " & File.Size & "<br>"  
	  response.write "<font face=""Verdana"" size=""2""><br><br><br>arquivo enviado com sucesso<br></font>"
	  response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
	  response.write "<meta http-equiv='refresh' content='1; url=downloads_full.asp'/>"
		  


%>

Eu consigo enviar dois arquivos um no formato .zip e outro no formato jpg. porém na hora de gravar os nomes no banco de dados eu consigo gravar o primeiro. Eu preciso salvar os nomes do dois arquivos um no formato .zip e outro no formato .jpg. Não está dando erro nenhum eu só não consigo salvar os nomes do dois arquivos no banco. Quem puder ajudar agradeço.

.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Jonathan!

 

Fiz a alteração conforme você disse: o codigo ficou assim:

 

<%
Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, sql, verifica
Dim mySmartUpload, intCount, File, descricao, nome, titulo

Set objConn =  Server.CreateObject("ADODB.Connection")
objConn.Open "DBQ=" & Server.MapPath("db/downloads.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

On error Resume Next

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.AllowedFilesList = "jpg,gif,doc,zip,rar,pdf"
mySmartUpload.DeniedFilesList = "exe,bat,cab,swf,asp,aspx,htm,html,png"
mySmartUpload.MaxFileSize = 350000
mySmartUpload.Upload


		
For Each File in mySmartUpload.Files

titulo=mySmartUpload.Form("titulo")
descricao=mySmartUpload.Form("descricao")

nome=File.FileName


sql = "SELECT * FROM tblproducts WHERE productfile = '"&titulo&"'"
Set verifica = objConn.Execute(sql)

		 

If NOT verifica.EOF Then
	Response.Write "Já existe um arquivo com este nome, tente outro!"
	response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
	response.write "<meta http-equiv='refresh' content='1; url=downloads_full.asp'/>"

Else
	strQuery = "INSERT INTO tblproducts (productname,productdescription,imagem,productfile) VALUES ('"&titulo&"','"&descricao&"','"&nome&"','"&nome&"')"
	objRs = ObjConn.Execute(strQuery)
	intCount = mySmartUpload.Save("Downloads")
				
End If



Next

If Err.number <> 0 Then

Response.Write("<p><br><font face=""Verdana"" size=""2""><br><br>Um dos seguintes erros aconteceu: você tentou enviar um arquivo cuja terminação não é .zip, .rar e nem .pdf Ou então o arquivo que você enviou é maior que 15.000 bytes(8 kb. ). A operação foi cancelada. Por favor tente de novo. ")
response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
response.write "<meta http-equiv='refresh' content='5; url=downloads_full.asp'/>"

response.end

end if








objConn.close
Set verifica = Nothing
Set objConn = Nothing
Set ObjRs = Nothing


	  Response.Write("Arquivo <b>" & File.FileName & "</b> ")
	  Response.Write "Extensão do arquivo: " & File.FileExt & "<br>"
	  Response.Write "Tamanho do arquivo: " & File.Size & "<br>"  
	  response.write "<font face=""Verdana"" size=""2""><br><br><br>arquivo enviado com sucesso<br></font>"
	  response.write "<font face=""Verdana"" size=""2""><br><br><br>Você será redirecionado em alguns segundos..<br></font>"
	  response.write "<meta http-equiv='refresh' content='1; url=downloads_full.asp'/>"
		  


%>

 

Dois problemas estão acontecendo:

 

Está gravando duplicadamente

 

 

Ex: enviei dois aquivos

 

foto1.jpg

arquivo.zip

 

Na minha tabela está assim:

 

- para arquivos de foto

 

uso campo chamado: imagem

 

- para arquivos de zip ou rar

 

uso campo chamado: productfile

 

quando foi feito o envio

 

ficou gravado assim:

 

 

1- foto1.jpg foto1.jpg

 

2 - arquivo.zip arquivo.zip

 

 

 

Eu quero que grave assim

 

 

1- foto1.jpg arquivo.zip

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.