Ir para conteúdo

POWERED BY:

Arquivado

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

Cesão

Sobre problema anterior

Recommended Posts

Olá pessoal,

 

você jah conhecem meu problema:

tenho um formulário de texto e upload...

na pagina que faz o upload, além de fazer o upload ele insere em DB e ainda manda as informações por e-mail...

 

gostaria de saber:

como faço para pegar apenas o nome do arquivo? e nao aquele C:\Meus Documentos\ bla bla bla...

 

quero apenas "arquivo.jpg"

Já usei tudo o que me falaram p usar, mas nada ainda... por isso vou passar o codigo das minhas duas paginas (formulario e pagina de envio) para vcs localizarem o problema, ok?

 

revela.asp (formulario)

ASP

[*]<HTML>

 

[*]<HEAD>

 

[*]<TITLE>Yázigi Internexus - aprender é bem legal</TITLE>

 

[*]<link href="css/style.css" rel="stylesheet" type="text/css">

 

[*]<script language="JavaScript" type="text/JavaScript">

 

[*]<!--

 

[*]function MM_findObj(n, d) { //v4.01

 

[*] var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

 

[*] d=parent.frames[n.substring(p+1)].documentn=n.substring(0,p);}

 

[*] if(!(x=d[n])&&d.allx=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];

 

[*] for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);

 

[*] if(!x && d.getElementByIdx=d.getElementById(n); return x;

 

[*]}

 

[*]

 

[*]function MM_validateForm() { //v4.0

 

[*] var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;

 

[*] for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);

 

[*] if (val) { nm=val.nameif ((val=val.value)!="") {

 

[*] if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');

 

[*] if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';

 

[*] } else if (test!='R') { num parseFloat(val);

 

[*] if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';

 

[*] if (test.indexOf('inRange') != -1) { p=test.indexOf(':');

 

[*] min=test.substring(8,p); max=test.substring(p+1);

 

[*] if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';

 

[*] } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }

 

[*] } if (errors) alert('The following error(s) occurred:\n'+errors);

 

[*] document.MM_returnValue = (errors == '');

 

[*]}

 

[*]//-->

 

[*]</script>

 

[*]</HEAD>

 

[*]<BODY>

 

[*]<TABLE WIDTH=710 height="100%" BORDER=0 align="center" CELLPADDING=0 CELLSPACING=0>

 

[*] <TR>

 

[*] <TD width="18" ROWSPAN=2 valign="top" background="images/bge.gif">  </TD>

 

[*] <TD height="200" valign="top" bgcolor="#FFFFFF"><!--#include file="topo.asp"--></TD>

 

[*] <TD width="18" ROWSPAN=2 valign="top" background="images/bgd.gif">  </TD>

 

[*] </TR>

 

[*] <TR>

 

[*] <TD valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="0" cellpadding="0">

 

[*] <tr>

 

[*] <td width="100%"><table width="100%" border="0" cellspacing="0" cellpadding="0">

 

[*] <tr>

 

[*] <td width="100%"> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td class="txt"><img src="images/tit_revela_brasil.gif" width="303" height="80"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td class="txt"><b>Envie sua foto e sua frase: </b></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td align="center" class="txt"><table width="100%" border="0" cellspacing="0" cellpadding="0" class="tby">

 

[*] <tr>

 

[*] <td width="3%"><img src="images/tb_bry_tesq.gif" width="19" height="22"></td>

 

[*] <td width="94%"><b>Preencha o formulário corretamente... Os campos com (*) são obrigatórios. </b></td>

 

[*] <td width="3%" align="right"><img src="images/tb_bry_tdir.gif" width="19" height="22"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td> </td>

 

[*] <td><form action="revela_envia.asp" method="post" name="form1" enctype="multipart/form-data">

 

[*] <table width="100%" border="0" cellpadding="0" cellspacing="0" class="tby">

 

[*] <tr>

 

[*] <td width="20%"> </td>

 

[*] <td> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Nome Completo*:</td>

 

[*] <td><input name="nome" type="text" class="cxtxt" id="nome"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Data de Nascimento: </td>

 

[*] <td><input name="nascimento" type="text" class="cxtxt" id="nascimento">

 

[*] (Ex: 00/0/0000) </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Endereço:</td>

 

[*] <td><input name="endereco" type="text" class="cxtxt" id="endereco">

 

[*] (Ex: Av. Exemplo, 777) </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Bairro:</td>

 

[*] <td><input name="bairro" type="text" class="cxtxt" id="bairro"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Telefone*:</td>

 

[*] <td><input name="telefone" type="text" class="cxtxt" id="telefone">

 

[*] (Ex: (19) 5555-5555) </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>E-mail*:</td>

 

[*] <td><input name="email" type="text" class="cxtxt" id="email"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="18">Curso que faz: </td>

 

[*] <td><input name="curso" type="text" class="cxtxt" id="curso"

 

[*] (Ex: Advanced) </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="18">Frase*:</td>

 

[*] <td><input name="frase" type="text" class="cxtxt" id="frase"></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td>Foto*:</td>

 

[*] <td><input name="foto" type="file" class="cxtxt" id="foto"></td>

 

[*] </tr>

 

[*] <tr align="center">

 

[*] <td colspan="2"><input name="imageField" type="image" onClick="MM_validateForm('nome','','R','telefone','','R','email','','R','frase','','R');return document.MM_returnValue" src="images/bt_oky.gif" width="16" height="15" border="0"></td>

 

[*] </tr>

 

[*] </table>

 

[*] </form></td>

 

[*] <td align="right"> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td><img src="images/tb_bry_esq.gif" width="19" height="22"></td>

 

[*] <td align="right"> </td>

 

[*] <td align="right"><img src="images/tb_bry_dir.gif" width="19" height="22"></td>

 

[*] </tr>

 

[*] </table> <p> </p> </td>

 

[*] </tr>

 

[*] </table></td>

 

[*] </tr>

 

[*] </table></TD>

 

[*] </TR>

 

[*] <!--#include file="rodape.asp"-->

 

[*]</TABLE>

 

[*]</BODY>

 

[*]</HTML>

 

revela_envia.asp (página de envio)

 

ASP

[*]<% Set upl Server.CreateObject("SoftArtisans.FileUp"%>

 

[*]<%strFilename Mid(oFileUp.UserFilenameInstrRev(oFileUp.UserFilename"\") + 1)

 

[*] foto strFileName(ObjUpload.Form("foto"))%>

 

[*]<% 'FileUp.Form("foto").ShortFileName %>

 

[*]<% upl.Path "e:\home\yazigiindaiatuba\web\revela" %>

 

[*] <% upl.Save %>

 

[*] Total de Bytes Enviados: <%=upl.TotalBytes%>

 

[*]<%

 

[*]pasta "revela/"

 

[*]nome ObjUpload.Form("nome")

 

[*]nascimento ObjUpload.Form("nascimento")

 

[*]endereco ObjUpload.Form("endereco")

 

[*]bairro ObjUpload.Form("bairro")

 

[*]telefone ObjUpload.Form("telefone")

 

[*]sEmailFrom ObjUpload.Form("email")

 

[*]curso ObjUpload.Form("curso")

 

[*]frase ObjUpload.Form("frase")

 

[*] %>

 

[*] <%'ObjUpload.Form("foto")

 

[*]

 

[*]

 

[*] SQL="INSERT INTO revela (nome, nascimento, endereco, bairro, telefone, email, curso, frase, foto) VALUES('"&nome&"', '"&nascimento&"', '"&endereco&"', '"&bairro&"', '"&telefone&"', '"&sEmailFrom&"', '"&curso&"', '"&frase&"', '"&pasta&foto&"')"

 

[*]conexao.Execute(SQL)

 

[*]'response.write(sql)

 

[*] %>

 

[*] <% Set upl = Nothing %>

 

[*]<%

 

[*]

 

[*]%>

 

[*]<!-- #include file="conn/conexao.asp" -->

 

[*]<%

 

[*]

 

[*]

 

[*]%>

 

[*]<%

 

[*]conexao.close()

 

[*]Set conexao = nothing

 

[*]%>

 

[*]

 

[*]<%

 

[*]'Declarando variveis

 

[*]'Dim sNameTo, sNameFrom, sEmailFrom, sText, sEmailTo, sNasci, sEnde, sBair, sCida, sEsta, sCep, sTele, sAlun, sOutra

 

[*]

 

[*]'Pegando os dados digitados nos campos e colocando em variaveis

 

[*]

 

[*]sEmailTo "cesarzeppini@hotmail.com"

 

[*]sNameTo "Yázigi Indaiatuba"

 

[*]

 

[*]'Cria o objeto

 

[*] set mailer server.createobject("SMTPsvg.Mailer")

 

[*] Mailer.FromName = nome

 

[*] Mailer.FromAddress = sEmailFrom

 

[*] 'Host para envio de emails

 

[*] Mailer.RemoteHost "smtp2.locaweb.com.br"

 

[*] 'Mailer.AddRecipient sEmailTo, sNameTo

 

[*] Mailer.Recipient = sEmailTo

 

[*] Mailer.Subject "Concurso Revela Brasil - "&nome

 

[*]

 

[*] 'Monta a texto para o envio

 

[*] strMsgHeader = nome & "(" & sEmailFrom & ") " & " preencheu o formulário do Concurso Revela Brasil! " & vbCrLf & vbCrLf

 

[*] strMsgFooter "Frase: " & frase & vbCrLf & "Para ver a foto entre em <a href='http://www.yazigiindaiatuba.com.br/admin"target='_blank'>http://www.yazigiindaiatuba.com.br/admin"</a> & vbCrLf & vbCrLf

 

[*] strMsgBody = "Nome: " &nome& vbCrLf & "E-mail: " &sEmailFrom & vbCrLf & "Data de Nascimento: " &nascimento & vbCrLf & "Endereço: " &endereco & vbCrLf & "Bairro: " &bairro & vbCrLf & "Telefone: " &telefone& vbCrLf & "Curso que Faz: " &curso

 

[*] Mailer.BodyText = strMsgHeader & strMsgFooter & strMsgBody

 

[*] ' Se for enviado redirecionar para obrigado.asp

 

[*] if Mailer.SendMail then

 

[*]  'Response.Redirect "obrigado.asp"

 

[*] else

 

[*] ' Se não for enviado mostra o erro que ocoreu

 

[*]  Response.Write ("Ocorreu um erro.<BR>")

 

[*]  Response.Write ("O Erro é " & Mailer.Response)

 

[*] end if

 

[*]%>

 

O código desta segunda está meio sujo por fazer tantos testes....

Se alguém puder me ajudar serei grato, pois tenho que entregar esse projeto HOJE!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu faço assim, lembrando que completo é a variavel que tem o caminho todo da imagem

 

geral=Len(completo)

'pego todo o comprimento em caracteres da variavel

 

Ex: C:\sites\Teste\imagem1.jpg retorna 26

 

 

final=instrrev(completo,"\",-1,1)

'procuro em qual posição está a barra na string, partindo da direita da variavel, pra pegar a ultima

Ex: C:\sites\Teste\imagem1.jpg retorna 15

 

 

total=geral-final

pego do total e tiro o valor do final

26-15=11

 

nome=right(completo,total)

partindo da direita pego até um caractere antes da ultima barra... funciona direitinho :)

Ex: C:\sites\Teste\imagem1.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Rick... acabei nem testando seu jeito, mas deve funcionar mesmo...eu consegui usando os códigos do Componente mesmo...ao inves de Request.Form eu usei upl.Form (que eu jah tinha aperto um Set upl do componente)Mesmo assim valeu

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.