Ir para conteúdo

POWERED BY:

Arquivado

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

razs

acentos

Recommended Posts

Boas pessoal, estou a desesperar com isto,a bd é mysql e da erro quando tento gravar um acento, ja defeni tudo e mais alguma coisa.

 

Como é que costumam resolver estas coisas?

 

eu tenho:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 

e a bd esta em utf-8

 

O que é que eu hei-de fazer nisto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

As tabelas do mysql estão com qual charset ?

Também me perdi no começo com isso, pois havia criado as tabelas sem reparar nisso e havia marcado elas como euro qualquer coisa, mudei para latin-1 se não me engano, e passou a se comportar como esperado.

Só não tenho certeza, pois não tenho mais acesso a esse banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado mas nao resulto continua a dar o erro :(

 

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[MySQL][ODBC 5.1 Driver][mysqld-5.5.23]Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' for column 'trab' at row 3 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado mas nao resulto continua a dar o erro :(

 

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[MySQL][ODBC 5.1 Driver][mysqld-5.5.23]Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' for column 'trab' at row 3 

Cara talvez o erro não esteja no banco e sim no código

 

Esta usando algum tipo de editor? no texto existe aspas simples ''?

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo e escrito com o notepad

 


session("trab") = UploadRequest.Item("trab").Item("Value")

sqlax=("UPDATE ea_db SET ficheirossss='"&cficheiross&"',statuss='"&session("stats")&"', nomes='"&session("nomes")&"',trab='"&session("trab")&"',moradas='"&session("moradas")&"',telefs='"&session("telefs")&"',faxs='"&session("faxs")&"',emails='"&session("emails")&"',type='12' where type ='12' and statuss = '"&session("stats")&"'")
Set rsax = conn.Execute(sqlax)

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o erro gerado atualmente ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro é o mesmo

 

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[MySQL][ODBC 5.1 Driver][mysqld-5.5.23]Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' for column 'trab' at row 3 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu um responser.write na query sql ?

 

Se não me engano, se na query estiver um valor com aspas simples, o mysql trata como sendo um valor numerico e com aspas duplas como sendo string.

Pode ser isso que está gerando o erro.

 

Teste a query no Mysql Workbench ou no Mysql Query Editor, normalmente faço assim quando ocorrem esses tipos de erros, fica mais facil localizar onde está a raiz do problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

antes de gravar na base de dados dê um reponse.write na string e diga-nos como aparece


session("trab") = UploadRequest.Item("trab").Item("Value")

response.write session("trab")
response.end

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudar o head da página que solicita os dados para que ele fique assim

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

 

Na página que responde os dados colocar isso antes do retorno co conteúdo (logo no topo):

<%

Response.AddHeader "Content-Type", "text/html; charset=utf-8"

Response.AddHeader "Pragma", "no-cache"

response.Charset="utf-8"

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça um teste com um formulário normal de enviar dados de uma página para a outra, e coloque o seguinte em cada uma das páginas no topo:

 


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Response.ContentType = "text/html"
Response.AddHeader "Content-Type", "text/html;charset=UTF-8"
Response.CodePage = 65001
Response.CharSet = "UTF-8"
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cemitérios</title>
</head>
<body>

<%
'faça dois teste
'o primeiro sem base de dados
response.write "cão"

'o segundo com dados vindo da base de dados
response.write rs("campo")

%>


</body>
</html>

 

 

tendo isso assim e as páginas guardadas como utf-8 e a base de dados em utf-8 tem que funcionar

Compartilhar este post


Link para o post
Compartilhar em outros sites

continua na mesma :s

 

Jos��

 

vou postar todo o codigo

 

pag onde tenho o form

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="sqlinjection.asp"-->
<!--#include file="ver.asp"-->
<!--#include file="adding.asp"-->
<!--#include file="md5.asp"-->
<!--#include file="erro.asp"-->

<%
Response.ContentType = "text/html"
Response.AddHeader "Content-Type", "text/html;charset=UTF-8"
Response.CodePage = 65001
Response.CharSet = "UTF-8"
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="css/style.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="images/ico.ico" >
<link href="css/themes/jquery-ui-1.8.17.custom.css" rel="stylesheet" type="text/css" />
<script src="css/jquery-1.7.1.js" type="text/javascript" ></script>
<script src="css/jquery-ui-1.8.17.custom.min.js" type="text/javascript" ></script>
<script src="css/jquery.ui.datepicker.js" type="text/javascript" ></script>
</head>
<body>
<%
Set rs2 = conn.Execute("select * from eo where type='12' and status='"&status&"'") 
%>

<form name="board1" action="upload_form.asp" method="Post" enctype="multipart/form-data">
<div class="field"><label>Picture:</label><input type="file" name="ficheirosss" size="47" value=""></div>
<br>
<div class="field"><label></label><input type="hidden" name="stat" id="textboxes" value="<%=request.querystring("status")%>"></div>
<div class="field"><label>Name:</label><input type="text" name="nome" id="textboxes" value="<%=rs2.fields("nome")%>"></div>
<div class="field"><label>Work:</label><input type="text" name="trab" id="textboxes" value="<%=rs2.fields("trab")%>"></div>
<div class="field"><label>Address:</label><input type="text" name="morada" id="textboxes" value="<%=rs2.fields("morada")%>"></div>
<div class="field"><label>Phone:</label><input type="text" name="tel" id="textboxes" value="<%=rs2.fields("telef")%>"></div>
<div class="field"><label>Fax:</label><input type="text" name="fax" id="textboxes" value="<%=rs2.fields("fax")%>"></div>
<div class="field"><label>E-mail:</label><input type="text" name="email" id="textboxes" value="<%=rs2.fields("email")%>"></div>
<input type="hidden" name="codeEmail">
<br>
<input type="image" class="image" id="Board1" name="Board1" src="images/ok.jpg">
</form>

</body>
</html>

 

upload_form


<%
Response.ContentType = "text/html"
Response.AddHeader "Content-Type", "text/html;charset=UTF-8"
Response.CodePage = 65001
Response.CharSet = "UTF-8"
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"></html>

<!--#include file = "upload_funcoes.asp" -->

<% 

   Const ForReading = 1, ForWriting = 2, ForAppending = 8 

Dim conn	
set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "Driver={MYSQL ODBC 5.1 DRIVER};Server=localhost;Port=3306;Database=eo;Uid=root;Pwd=pass;"
conn.Open()

' Chama Funes que fazem o Upload funcionar
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin

' Recupera os Dados ----------------------
session("stat") = UploadRequest.Item("stat").Item("Value")
stat = UploadRequest.Item("stat").Item("Value")
session("nome") = UploadRequest.Item("nome").Item("Value")


-->Se eu puser aqui um response.write session("nome") ele devolve Jos��<--

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

na segunda página não pôs o :


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

nem 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 

 

tente fazer um form sem ser com o upload, faça com um form normal, isso provavelmente terá haver como o seu script de upload

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz as alterações que disses-te e ele continuou na mesma.

 

passei para uma pagina em branco e ele printou o mesmo

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.