Gostaria de contar com a ajuda de vocês no seguinte problema.
Eu tenho um campo no meu formulário que se chama url. Do lado desse campo tem o botão escolher. Quando eu clico nele é aberta uma janéla popup com a página upload.asp(1º código). Eu seleciono o arquivo que eu quero e clico no botão para enviar o arquivo.
Acontece que quando eu faço isso... além deu não receber qualquer informação se o arquivo foi ou não enviado, o nome do arquivo que acabou de ser enviado, não é capturado pelo campo URL da tela principal. Nos testes que eu fiz a foto é enviada normalmente, mas o nome do arquivo não é capturado pela janéla principal depois de enviado na popup.
Como resolver isso...
Abaixo postei o código que faz o upload sem componente (deste fórum)... e mais abaixo o formulário que deverá capturar o nome do arquivo que foi enviado.
UPLOAD.ASP
<%
byteCount = Request.TotalBytes
'RequestBin = Request.BinaryRead(byteCount)
%>
<html>
<head>
<title>SISTEMA DE UPLOAD DE QUALQUER ARQUIVO</title>
<script LANGUAGE="JavaScript">
function Limit(upload) {
if (upload.file.value == "") {
alert("Informe o nome do arquivo (.jpg ou .gif)!");
upload.file.focus();
return false;
}
vfile = upload.file.value;
tfile = vfile.length;
if ((vfile.substr(tfile - 4, 4) != ".jpg") & (vfile.substr(tfile - 4, 4) != ".gif")){
alert("O arquivo deverá possuir o formato (.jpg ou .gif)!");
upload.file.focus();
return false;
}
}
</script>
</head>
<body>
<form name=upload OnKeyPress="return false;" OnSubmit= "return Limit(upload);" method=post ENCTYPE="multipart/form-data">
Arquivo : <input type="file" name="file" size="20"><br>
<input type=submit Name="Action" value="Upload do Arquivo">
</form></input></input>
</body></HTML>
<!---#INCLUDE FILE="upload.inc" --->
<%
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then 'Request method must be "POST" For get the fields
Set Fields = GetUpload()
If byteCount > 200000 Then
Response.write "Tamanho do arquivo: <font color='red'>" & byteCount & "</font><br>"
Response.Write "<center>Não deu certo...</center>"
Response.End
End If
'ALTERE A PASTA CHAMADA "imgs" PELA PASTA QUE VOCÊ QUER DEIXAR AS IMGENS
'LEMBRANDO QUE DEVE ESTAR NO MESMO DIRETORIO DAS PAGINAS UPLOAD.ASP E UPLOAD.INC
'DEIXE A BARRA "/" - PARA USAR NO SEU SITE
'DEIXE A BARRA "\" - PARA USAR NA SUA INTRANET
FilePath = Server.MapPath("fotos") & "\" & Fields("file").FileName
Fields("file").Value.SaveAs FilePath
End If
'BY - ROBERTO GODOY
%>
INCLUIR.ASP
<!--#include file="cookies.asp" -->
<%
'Criando variáveis
Dim rsTipos
set rsTipos=server.createobject("adodb.recordset")
'Esta SELECT irá selecionar todos os tipos de notícias
'Neste caso, será para colocarmos no formulário as opções de escolher o tipo da notícia
rsTipos.Open "SELECT * from noticias_tipo order by tipo", meubd
%>
<script language="JavaScript">
function eventos() {
var width = 350;
var height = 300;
var left = 0;
var top = 0;
self.name = 'opener';
remote = open('upload2.asp','site', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, resizable=no, fullscreen=no');
remote.focus();
}
function enviarfoto() {
var width = 350;
var height = 200;
var left = 0;
var top = 0;
self.name = 'enviarfoto';
remote = open('upload.asp','site', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, resizable=no, fullscreen=no');
remote.focus();
}
</script>
<html>
<head>
<title>iMasters / ASP - Notícias</title>
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="778" border="0" cellspacing="3" cellpadding="0">
<tr valign="middle">
<td height="70" colspan="3" bgcolor="fcfcfc"><font size="6" face="Arial, Helvetica, sans-serif">ADMINISTRATIVO
- ASP NOTÍCIAS</font></td>
</tr>
<tr>
<td colspan="3" bgcolor="f0f0f0"><font face="Arial, Helvetica, sans-serif"> </font></td>
</tr>
<tr>
<td width="126" height="277" valign="top" bgcolor="#BFEFFF"><table width="100%" border="0" cellspacing="2" cellpadding="1">
<tr>
<td bgcolor="#FFFFFF"><a href="incluir.asp">
<div align="center"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Incluir
Notícia</strong></font></div>
</a></td>
</tr>
</table></td>
<td width="600" valign="top"><blockquote>
<p><font face="Arial, Helvetica, sans-serif"><strong><font size="4">
Incluir notícia</font></strong></font></p>
<p><font size="2" face="Arial, Helvetica, sans-serif">Para incluir uma
nova notícia, preencha o formulário abaixo:</font></p>
<form name="form1" method="post" action="incluir2.asp">
<table border="0" align="center" cellpadding="0" cellspacing="3">
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Título:</font></div></td>
<td><div align="left"><font face="Arial, Helvetica, sans-serif"><font size="2">
<input name="titulo" type="text" id="titulo" size="40">
</font></font></div></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Tipo:</font></div></td>
<td><font size="2" face="Arial, Helvetica, sans-serif">
<select name="tipo" id="tipo">
<% while NOT rsTipos.EOF %>
<option value="<%=rsTipos("codtipo")%>"><%=rsTipos("tipo")%></option>
<%
rsTipos.movenext
wend
%>
</select>
</font></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Chamada:</font></div></td>
<td><font face="Arial, Helvetica, sans-serif"><font size="2">
<textarea name="chamada" cols="40" id="chamada"></textarea>
</font></font></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Conteúdo:</font></div></td>
<td><font face="Arial, Helvetica, sans-serif"><font size="2">
<textarea name="conteudo" cols="40" rows="5" id="conteudo"></textarea>
</font></font></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Data
para expirar:</font></div></td>
<td><font size="2" face="Arial, Helvetica, sans-serif">
<input name="expira" type="text" id="expira">
</font></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Destaque:</font></div></td>
<td> <table width="100" border="0" cellspacing="0" cellpadding="1">
<tr>
<td><font size="2" face="Arial, Helvetica, sans-serif">
<input type="radio" name="destaque" value="1">
</font></td>
<td><font size="2" face="Arial, Helvetica, sans-serif">Sim</font></td>
<td><font size="2" face="Arial, Helvetica, sans-serif">
<input name="destaque" type="radio" value="0" checked>
</font></td>
<td><font size="2" face="Arial, Helvetica, sans-serif">Não</font></td>
</tr>
</table></td>
</tr>
<tr>
<td><div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Foto:</font></div></td>
<td><table width="254" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="152" height="24"><input name="url" type="text" id="url" readonly>
</td>
<td width="102"><table width="81" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="81"><font size="1" face="Arial, Helvetica, sans-serif">Escolher</font></td>
</tr>
<tr>
<td><font size="1" face="Arial, Helvetica, sans-serif"><a href="java script:enviarfoto();">Enviar</a></font></td>
</tr>
</table></td>
</tr>
</table> </td>
</tr>
<tr>
<td colspan="2"><div align="right">
<input type="submit" name="Submit" value="Cadastrar">
</div></td>
</tr>
</table>
</form>
<p> </p>
</blockquote></td>
<td width="40" bgcolor="#BFEFFF"><font face="Arial, Helvetica, sans-serif"> </font></td>
</tr>
<tr>
<td colspan="3" bgcolor="f0f0f0"><div align="right"><font color="#666666" size="2" face="Arial, Helvetica, sans-serif">ASP
- Notícias</font></div></td>
</tr>
</table>
<p> </p>
</body>
</html>










