o código abaixo só aceita com que o aluno(usuário) envie uma atividade contendo *.zip, o correto seria enviar *.doc, *.ppt.... mas da erro.....(quando há esse tipo é chamado para a pagina erro_submeter_atividade.asp)
oque há de errado?
<% response.buffer = true
response.expires = 0 %>
<!-- #include file="conexao.asp" -->
<!-- #include file="biblioteca_gustavo.asp" -->
<%
Set RS = server.createObject("ADODB.RecordSet")
Set RSa = server.createObject("ADODB.RecordSet")
'CRIANDO UMA INSTANCIA DO OBJETO
Set objUpload = Server.CreateObject("Dundas.Upload.2")
Set ObjFso = Server.CreateObject("Scripting.FileSystemObject")
'PERMITINDO O USO DE CAMINHO VIRTUAL
objUpload.UseVirtualDir = True
'ESTE LOOP JOGA OS ARQUIVOS PARA A MEMORIA
Set objNextFile = objUpload.GetNextFile
Do Until objNextFile Is Nothing
'VERIFICA SE O ARQUIVO SELECIONADO é UM EXECUTAVEL
If InStr(1,objNextFile.ContentType,"octet-stream",1) = 0 Then
sql = "UPDATE Cumprimento SET Data = '"&date()&"' , Hora = '1899-12-30 "&time()&"', Aproveitamento= 0 WHERE IdAtividade = "&IdAtividade&" and IdMatricula = "&session("aluno")&""
assunto = "[unilins Virtual]Confirmação de atividade enviada"
mensagem = "<html><head></head><body><center><b>Confirmação de envio de atividade</b></center><p>Sua atividade ("&objUpload.Form("atividades")&") foi enviada com êxito.</p></body></html>"
html = true
enviar_email de_nome, de_email, para_nome, para_email, assunto, mensagem, html
end if
RS.Close %>
<script>
alert('Atividade enviada com sucesso.');
</script>
<% 'VARIAVEL DE CONTROLE PARA VER PARA QUE PAGINA VAI RETORNAR
Pergunta
frnd
o código abaixo só aceita com que o aluno(usuário) envie uma atividade contendo *.zip, o correto seria enviar *.doc, *.ppt.... mas da erro.....(quando há esse tipo é chamado para a pagina erro_submeter_atividade.asp)
oque há de errado?
<% response.buffer = true
response.expires = 0 %>
<!-- #include file="conexao.asp" -->
<!-- #include file="biblioteca_gustavo.asp" -->
<%
Set RS = server.createObject("ADODB.RecordSet")
Set RSa = server.createObject("ADODB.RecordSet")
'CRIANDO UMA INSTANCIA DO OBJETO
Set objUpload = Server.CreateObject("Dundas.Upload.2")
Set ObjFso = Server.CreateObject("Scripting.FileSystemObject")
'PERMITINDO O USO DE CAMINHO VIRTUAL
objUpload.UseVirtualDir = True
'ESTE LOOP JOGA OS ARQUIVOS PARA A MEMORIA
Set objNextFile = objUpload.GetNextFile
Do Until objNextFile Is Nothing
'VERIFICA SE O ARQUIVO SELECIONADO é UM EXECUTAVEL
If InStr(1,objNextFile.ContentType,"octet-stream",1) = 0 Then
objNextFile.SaveToMemory
End If
Set objNextFile = objUpload.GetNextFile
Loop
function SalvaArquivos
SalvaArquivos = 0
For Each objUploadedFile in objUpload.Files
on error resume next
SalvaArquivos = SalvaArquivos + 1
objUploadedFile.SaveAs "scripts/turmas/"&session("turma")& "/" & pastaAluno & "/" & IdAtividade & "/"& "_Data_"& replace(date(), "/", "-") &"_Hora_" &replace(time(), ":", "-") + objUpload.GetFileName(objUploadedFile.OriginalPath)
if err.number>0 or conn.errors.count>0 then
SalvaArquivos = 0%>
<script>alert("Não foi possível enviar seu arquivo. Contate a administração.");
eval("parent.frames[\'self\'].location='erro_submeter_atividade.asp'");
</script>
<% para_email = "virtual@unilins.edu.br"
para_nome = "administração"
de_nome = "Unilins Virtual"
de_email = "virtual@unilins.edu.br"
assunto = "Erro no arquivo (psubmeteatividade.asp)"
mensagem = "O aluno "&pastaAluno&" não conseguiu submeter uma atividade. Uma possibilidade é a permissão da pasta no servidor."
html = false
enviar_email de_nome, de_email, para_nome, para_email, assunto, mensagem, html
end if
Next
end function
'PEGANDO O RA DO ALUNO PARA JOGAR O ARQUIVO EM SUA PASTA
sql = "SELECT Aluno.Ra FROM Aluno, Matricula WHERE Matricula.IdMatricula = "&session("aluno")&" and Matricula.IdAluno = Aluno.IdAluno"
Rs.Open sql, conn, 3, 3
RaAluno = RS("Ra")
pastaAluno = RS("Ra")
RS.Close
modulo = objUpload.Form("modulos")
idatividade = objUpload.Form("idatividade")
response.write "idatividade=" & idatividade
'sql = "SELECT IdAtividade FROM Atividade WHERE IdUnidade = "&modulo&" and Nome = '"&objUpload.Form("atividades")&"'"
'RS.Open sql, conn, 3, 3
' IdAtividade = RS("IdAtividade")
'RS.Close
caminho_virtual ="/scripts/turmas/"&session("turma")& "/" & pastaAluno & "/" & IdAtividade
CAMINHO = Server.MapPath(caminho_virtual)
' CRIANDO O OBJETO DA PASTA DA TURMA
If objFSO.FolderExists(Server.MapPath(caminho_virtual)) = True Then
response.write "existe a pasta" & "<br>"
response.write "caminho virtual= "& caminho_virtual
' response.end
OK = SalvaArquivos
Else
caminho = "\scripts\turmas\"&session("turma")& "\" & pastaAluno & "\" & IdAtividade
response.write "não existe a pasta" & "<br>"
response.write "vai criar em = " & caminho
' response.end
on error resume next
criar_diretorio(caminho)
if err.number>0 or conn.errors.count>0 then
SalvaArquivos = 0
response.write err.description
response.write conn.errors.description
response.end
end if
OK = SalvaArquivos
End if
if OK > 0 then
'PEGANDO O ID DA ATIVIDADE
modulo = objUpload.Form("modulos")
sql = "SELECT IdAtividade FROM Atividade WHERE IdUnidade = "&modulo&" and Nome = '"&objUpload.Form("atividades")&"'"
RS.Open sql, conn, 3, 3
IdAtividade = RS("IdAtividade")
RS.Close
'CONSULTANDO PARA VER SE ESTA ATIVIDADE JÁ FOI CUMPRIDA
sql = "SELECT IdAtividade, IdMatricula FROM Cumprimento WHERE "
sql = sql & "IdAtividade = "&IdAtividade&" and IdMatricula = "&session("aluno")&""
RS.Open sql, conn, 3, 3
if not RS.EOF then
'ATUALIZANDO O BANCO DE DADOS DE CUMPRIMENTO
sql = "UPDATE Cumprimento SET Data = '"&date()&"' , Hora = '1899-12-30 "&time()&"', Aproveitamento= 0 WHERE IdAtividade = "&IdAtividade&" and IdMatricula = "&session("aluno")&""
RSa.Open sql, conn, 3, 3
else
'INSERINDO NO BANCO DADOS DO CUMPRIMENTO
sql = "INSERT INTO Cumprimento (IdAtividade, IdMatricula, Data, Hora, Aproveitamento, Situacao) "
sql = sql &"values ("&IdAtividade&", '"&session("aluno")&"', '"&date()&"', '1899-12-30 "&time()&"', 0, 3)"
Rsa.Open sql, conn, 3, 3
end if
RS.Close
'CRIANDO ARQUIVO TXT COM O COMENTARIO SOBRE A ATIVIDADE
conteudo = objUpload.Form("comentario")
if conteudo <> "" then
modo_abertura = 2
cria_outro = true
caminho = "scripts/turmas/"&session("turma")& "/" & pastaAluno & "/" & IdAtividade & "/"& "comentario.txt"
cria_txt caminho, conteudo, modo_abertura, cria_outro
end if
'ENVIANDO E-MAIL PARA O ALUNO
sql = "SELECT Usuario.Email, Usuario.Nome FROM Usuario, Aluno "
sql = sql & "WHERE Usuario.IdUsuario = Aluno.IdAluno and Aluno.Ra = "&RaAluno
RS.Open sql, conn, 3, 3
If not RS.EOF then
para_email = RS("Email")
para_nome = RS("Nome")
de_nome = "Unilins Virtual"
de_email = "virtual@unilins.edu.br"
assunto = "[unilins Virtual]Confirmação de atividade enviada"
mensagem = "<html><head></head><body><center><b>Confirmação de envio de atividade</b></center><p>Sua atividade ("&objUpload.Form("atividades")&") foi enviada com êxito.</p></body></html>"
html = true
enviar_email de_nome, de_email, para_nome, para_email, assunto, mensagem, html
end if
RS.Close %>
<script>
alert('Atividade enviada com sucesso.');
</script>
<% 'VARIAVEL DE CONTROLE PARA VER PARA QUE PAGINA VAI RETORNAR
'dados = objUpload.Form("dados")
'if dados <> "" then
'response.write "entrou<br>"
'response.write "idatividade= " & idatividade
'response.end
response.redirect "aluno_dados_atividade.asp?idatividade="&idatividade&"&modulos="&modulo
' end if
else
response.redirect "erro_submeter_atividade.asp"
para_email = "virtual@unilins.edu.br"
para_nome = "administração"
de_nome = "Unilins Virtual"
de_email = "virtual@unilins.edu.br"
assunto = "Erro no arquivo (psubmeteatividade.asp)"
mensagem = "O aluno "&pastaAluno&" não conseguiu submeter uma atividade. Uma possibilidade é a permissão da pasta no servidor."
html = false
enviar_email de_nome, de_email, para_nome, para_email, assunto, mensagem, html
end if
'release resources
Set objUpload = Nothing
Set Rs = Nothing
Set Rsa = Nothing
Conn.close
Set conn = nothing
%>
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.