Ir para conteúdo

POWERED BY:

Arquivado

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

marceloRP

Como fazer upload de imagens com ASP sem componentes

Recommended Posts

Pessoal, tudo bem?

 

Eu tenho um sisteminha que possui uma ferramenta de upload que usa o aspSmartUpload. Funciona muito bem, desde que o servidor tenha o componente instalado ...

Por isso enfrendo problemas com servidores que não têm esse componente, como a Locaweb. Por isso minha dificuldade em arrumar o transtorno que isso me causa, até porque não sou programador. Como o sistema já está pronto, eu apenas integro no site.

A página faz upload de duas imagens (uma pequena e uma grande) e grava no banco as informações do formulário. As imagens vão todas para uma pasta específica.

Dêem uma olhada no código abaixo:

 

<%If request.QueryString("Status")=2 then%>
<%
Set Upload = Server.CreateObject("aspSmartUpload.SmartUpload")
Upload.Upload

caminho=Server.MapPath("ImagensUpload")
caminho=Replace(caminho,"\..\admin\","")
caminho=caminho&"\"
'response.write caminho
'response.End()
if  Upload.Form("arq") <> "" then

Image1 = Upload.Form("arq") 
Image= Image1

num = inStrRev(image,"\",len(image))
arq = mid(image,cDbl(num)+1,len(image))


if Upload.Files.Item(1).FileExt <> "" then
Upload.Files.Item(1).SaveAs(caminho&arq)
end if

end if

If  Upload.Form("arq2")<> "" then

Image2 = Upload.Form("arq2") 
Image3= Image2

num = inStrRev(image3,"\",len(image3))
arq2 = mid(image3,cDbl(num)+1,len(image3))

if Upload.Files.Item(2).FileExt <> "" then
Upload.Files.Item(2).SaveAs(caminho&arq2)
end if

end if

If Upload.form("Nome")="" then
response.redirect("erro.asp?erro=Informe o nome do produto.")
end if
Nome=replace(Upload.Form("Nome"),chr(34),"")
Area=replace(Upload.Form("Area"),chr(34),"")
Promocao=replace(Upload.Form("Promocao"),chr(34),"")
Resumo=replace(Upload.Form("Resumo"),"'","")
ValorDE=replace(Upload.Form("ValorDE"),"'","")
ValorPOR=replace(Upload.Form("ValorPOR"),"'","")
Conteudo=replace(Upload.Form("Conteudo"),"'","")
Imagemp=arq
Imagemg=arq2


sql="INSERT INTO produto (Nome, Resumo, Conteudo, Area, Promocao, ValorDE, ValorPOR, ImagemP, ImagemG) "
sql=sql&"values ('" & nome & "','" & resumo & "','" & conteudo & "','" & area & "','" & promocao & "','" & valorde & "','" & valorpor & "','" & imagemg & "')"

'response.redirect("erro.asp?erro="&sql)

set SqlConteudo=conexao.execute(sql)

response.redirect("novidade.asp")

%>
<%end if%>
<html>
<head>
<title>Upload de Arquivo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
function EnviarCadastro()
{
document.conteudo.arq.value = document.conteudo.imagemp.value;
document.conteudo.arq2.value = document.conteudo.imagemg.value;
document.conteudo.submit();
}

</script>
<html>
<head>
<title>Upload de arquivo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body class="body-color">
<table width="100%"  border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center" valign="middle"><table width="750" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="top"><!--#include file="inc_topo.asp" --></td>
</tr>
<tr>
<td align="center" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr align="center" valign="top" class="td-1">
<td><table width="100%" border="0" cellspacing="8" cellpadding="0">
<tr>
<td align="center" valign="top" class="td-0"><table width="99%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="140" align="left" valign="top"><!--#include file="inc_menu.asp" --></td>
<td align="center" valign="top"><table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="40" class="titulo">Cadastrar produto</td>
<td width="150" align="right" valign="middle"><a href="conteudo_insere.asp"></a></td>
</tr>
</table></td>
</tr>

<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="65" align="left" valign="top"><img src="img/dicas.gif" width="60" height="30"></td>
<td class="txt-normal">Prepare as imagens para publicar!<br>
<span class="txt-b">Negrito</span> - use a tag <b> no início do trecho em negrito e </b> no final.<br>
<em>Itálico</em> - use a tag <em> no início do trecho em itálico e </em> no final. </td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td align="left" valign="top"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
<form action="produto_insere.asp?status=2" method="post" enctype="multipart/form-data"  name="conteudo" onSubmit="return EnviarCadastro()" >
<tr>
<td width="80" height="30" class="link-1">Título</td>
<td height="30" class="txt-normal"><input name="Nome" type="text" class="form" id="Nome" size="60"></td>
</tr>
<tr>
<td height="40" align="left" valign="top" class="txt-b">Imagem P</td>
<td height="40" align="left" valign="top" class="txt-normal"><input type="hidden" name="arq" value="">
<input name="imagemp" type="file" class="form">
<br>
Tamanho da imagem = 90 x 90 pixels </td>
</tr>
<tr>
<td height="40" align="left" valign="top" class="txt-b">Imagem G</td>
<td height="40" align="left" valign="top" class="txt-normal"><input type="hidden" name="arq2" value="">
<input name="imagemg" type="file" class="form">
<br>
Largura da imagem = 200 pixels </td>
</tr>
<tr>
<td height="30" align="left" valign="middle" class="txt-b">Loccitane</td>
<td align="left" valign="middle" class="txt-normal"><input name="area" type="checkbox" id="area" value="1"></td>
</tr>
<tr>
<td height="30" align="left" valign="middle" class="txt-b">Promoção</td>
<td align="left" valign="middle" class="txt-normal"><input name="promocao" type="checkbox" id="promocao" value="1"></td>
</tr>
<tr>
<td height="30" align="left" valign="middle" class="txt-b">Valor DE</td>
<td align="left" valign="middle" class="txt-normal"><input name="ValorDE" type="text" class="form" id="ValorDE" size="15" maxlength="10"> 
Formato: 100,00 / 1.000,00 - Nâo é necessário incluir R$</td>
</tr>
<tr>
<td height="30" align="left" valign="middle" class="txt-b">Valor POR</td>
<td align="left" valign="middle" class="txt-normal"><input name="ValorPOR" type="text" class="form" id="ValorPOR" size="15" maxlength="10">
Formato: 100,00 / 1.000,00 - Nâo é necessário incluir R$</td>
</tr>
<tr>
<td align="left" valign="top" class="txt-b">Resumo</td>
<td height="70" valign="top" class="txt-normal"><textarea name="resumo" cols="70" rows="3" wrap="virtual" class="form-msg"></textarea>
<br>
Máximo de 250 caracteres</td>
</tr>
<tr>
<td align="left" valign="top" class="txt-b">Conteúdo</td>
<td height="90" align="left" valign="top" class="txt-normal"><textarea name="Conteudo" cols="70" rows="15" wrap="virtual" class="form-msg"></textarea></td>
</tr>

<tr>
<td height="40" colspan="2" class="txt-normal"><input type="image" name="Submit" src="img/botao_cadastrar.gif"></td>
</tr>
</form>
<tr>
<td colspan="2"> </td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td align="center" valign="top"><!--#include file="inc_fim.asp" --></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>
<%
conexao.close
set Upload = nothing 
set SqlConteudo = nothing
end if
%>

Se alguém puder me ajudar a resolver esse problema, eu agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é gerado algum erro, se sim poste linha e numero, lembre-se k existem varios exemplos em nosso laboratorio de script...

Compartilhar este post


Link para o post
Compartilhar em outros sites

é gerado algum erro, se sim poste linha e numero, lembre-se k existem varios exemplos em nosso laboratorio de script...

 

O erro é que o servidor não tem o AspUpload instalado ... veja:

 

Server object error 'ASP 0177 : 800401f3'

 

Server.CreateObject Failed

 

/teste/adm/produto_insere_bkp.asp, line 5

 

Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp.

 

Sei que aqui tem vários scripts prontos, mas como não manjo muito de asp, gostaria que alguém me indicasse o mais simples e fácil de se usar, considerando que além do upload das imagens (2), preciso gravar informações no banco. Das imagens só gravo os nomes no banco, elas vão para uma pasta específica do servidor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você já confirmou se realmente está instalado no servidor?

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.