Upload + codificação
Olá pessoal,
o meu karma, voltou...
Depois de passar a utilizar a base de dados mysql em utf-8 e em todas as minhas páginas, checar a codificação e incluir
<%@ Language=VBScript CodePage=65001%>
Nas página HTML, incluir:
<meta charset="utf-8" />
tudo ia maravilhosamente bem, até eu ter que trocar meu sistema de upload.
Agora, estou usando o Pure Asp Upload, que para envio de imagens, é excelente, mas preciso da ajuda de vocês, pois os demais campos de texto, ficam malucos.
Fiz um código bem simples, com apenas um campo File e um campo texto, só para exemplificar, e dou um response.End() logo depois que ele pega o campo só pra tentar ver o que ocorre, mas, depois de vários dias sem sucesso, venho pedir ajuda.
A versão do PUA é 2.06
<%@ Language=VBScript CodePage=65001%>
<%
Response.Expires = 0
Response.ExpiresAbsolute = Now() - 1
Response.AddHeader "pragma", "no-cache"
Response.AddHeader "cache-control", "private, no-cache, no-store, must-revalidate"
%>
<!--#include file="../includes/pure-upload.asp"-->
<% Session.Timeout = 60 %>
<%
Response.Expires = 0
Response.ExpiresAbsolute = Now() - 1
Response.AddHeader "pragma", "no-cache"
Response.AddHeader "cache-control", "private, no-cache, no-store, must-revalidate"
%>
<%
sAction = Request.querystring("a_edit")
If sAction = "" Or IsNull(sAction) Then
sAction = "I" ' Display Record
else
Dim fupload: Set fupload = New ASPForm
Server.ScriptTimeout = 2000
fupload.SizeLimit = 4*1000000 'limit of size per whole form
Const fsCompletted = 0
If fupload.State = fsCompletted Then 'Completted
fupload.CharSet = Response.CharSet
x_jogadorID = fupload("x_jogadorID")
x_jogadorNome = fupload.Item("x_jogadorNome")
meukarma = fupload.CharSet
response.write x_jogadorNome & "-" & meukarma
response.End()
ElseIf fupload.State > 10 then
Const fsSizeLimit = &HD
Select case fupload.State
case fsSizeLimit
Session(ewSessionMessage) = "<br><Font Color=red>Source form size (" & Form.TotalBytes & "B) exceeds form limit (" & Form.SizeLimit & "B)</Font><br>"
Session(ewSessionMessageTipo) = "error"
case else
Session(ewSessionMessage) = "<Font Color=red>Erro no Formulário." & Form.State & "</Font><br>"
Session(ewSessionMessageTipo) = "error"
end Select
End If'Form.State = 0 thenEnd If 'vai editar
%>
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>teste</title>
</head>
<body>
<form name="fjogadoredit" id="fjogadoredit" action="teste.asp?a_edit=U" class="form-horizontal" method="post" enctype="multipart/form-data" onSubmit="return EW_checkMyForm(this);" >
<input type="text" name="x_jogadorNome" id="x_jogadorNome" class="input-xlarge" maxlength="50" value="<%= Server.HTMLEncode(x_jogadorNome&"") %>">
<input type="file" id="x_jogadorFotoRosto" name="x_jogadorFotoRosto" class="default">
</form>
</body>
</html>
O nome que estou cadastrando como teste é "amnésio", que se transforma em: amnésio
Se eu coloco o bloco abaixo logo na segunda linha, o resultado para "amnésio" será amnésio
<%
Response.AddHeader "Content-Type", "text/html; charset=utf-8"
response.Charset="utf-8"
%>
Alguém já conseguiu utilizar esse componente dessa forma, ou se conseguiu resolver, como fez?
Muitíssimo obrigado.
Discussão (0)
Carregando comentários...