Ir para conteúdo

POWERED BY:

Arquivado

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

gilbertojr

problemas com envio de dados pra o DB

Recommended Posts

Então pessoal tudo certo? venho aqui para pedir mais uma ajuda.

 

seguinte: estou enviando por um campo texto um nome para o DB que é MySql estou usando ASP para isso, a página está setada com um META "iso-8859-1",

os dados estão indo para o DB de forma estranha, seu eu digitar por exemplo"AÇUCAR", ele cadastra no DB, "AçUCAR", vi dentro do DB que está assim.

e quando retorno este dado para página ele volta desta forma mesmo.

 

 

então tive um pensamento lógico em cima disso ae, e queria ajuda pra entender melhor

 

 

A tabela no DB está como Charset: "latin1" e Collation: "latin1_swedish_ci".

A página HTML está com Meta: "ISO-8859-1" e não pode ser "UTF-8" no meta!

O cabeçalho ASP está: Response.Charset = "ISO-8859-1"

 

quem comanda o envio dos dados para o DB?

e quem é responsável pelo recebimento dos dados?

 

não consegui direito entender, foi mal a ignorância. mas preciso entender isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principio parece está ok.

 

"HTML está com Meta" iria interferir somente na exibição no HTML. Quanto a gravar no banco, não atrapalharia.

 

Você já verificou diretamente no banco como está gravado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principio parece está ok.

 

"HTML está com Meta" iria interferir somente na exibição no HTML. Quanto a gravar no banco, não atrapalharia.

 

Você já verificou diretamente no banco como está gravado?

 

então vi sim, consegui resolver o problema. mas queria entender quem envia e quem retorna?

 

deixei assim:

Na página HTML como META ficou iso-8859-1

no charset ASP: utf-8, no header também.

no DB está como Charset: "latin1" e Collation: "latin1_swedish_ci"

e nos arquivos que vem do Ajax ficou como: utf-8

está funcionando agora, mais ainda não entendi direito precisa estudar isso. pra entender, quando eu envio os dados, esses dados vão para o DB sob custódia de quem? do META, do Charset do ASP ou do DB.? e quando volta?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando vão para o DB, passam primeiro por Charset do ASP e depois do DB.

 

Quando exibem na página vem primeiro do DB, Charset do ASP e depois a tag meta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando vão para o DB, passam primeiro por Charset do ASP e depois do DB.

 

Quando exibem na página vem primeiro do DB, Charset do ASP e depois a tag meta.

 

 

beleza. achei que tinha resolvido um problema aqui, mas não! já estou sem saco pra isso, meu Deus.seguinte:um formulário é enviado para o db e quando chega lá, os dados não estão indo normalmente tá indo assim: "SÃO" vai "S?O".só queria acerto isso, mas não consigo, estou em um dilema aqui cara, as minhas tabelas no mysql estão como charset "utf8" e collation "utf8_general_ci".agora vejam a situação:página que está o formulário:

Response.Charset="ISO-8859-1"
Response.AddHeader "Content-Type", "text/html; charset=iso-8859-1"
página que está o codigo que este formulario envia: "SÃO"
Response.CharSet = "iso-8859-1"
Response.AddHeader "Content-Type", "text/html; charset=iso-8859-1"
e no db chega "S?O"---dai então no mudei no mysql de charset "utf-8" para "latin1" e collation "utf8_general_ci" para "latin1_general_ci".os dados vão a mesma coisa pra lá.bom então não deve ser o DB, deve ser o envio dos dados, então o ASP.

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.