Ir para conteúdo

Arquivado

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

Gavaldão

erro ao gravar caracteres no BD PHP

Recommended Posts

Bom dia amigos.
Tenho um formulário de cadasro assim:

<?php
include "funcoes.php";
$data = date("d/m/Y");
?>
<!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">
tenho plugins jquery
e envio dados por ajax.

A página de gravação:

header("Content-Type: text/html; charset=iso-8859-1");
include "funcoes.php";
$usuario = "eu";

$nome = tratatexto($_POST["nome"]);


A função tratatexto é assim:

function trataTexto($str){
$teste = utf8_decode($str);
$teste = str_replace("'","",$teste);
$teste = str_replace("\"","",$teste);
//$teste = addslashes($str);
$teste = strip_tags($teste);
$teste = trim($teste);
$teste = strtoupper($teste);
return $teste;
}

 

o banco tem collation: latin1_swedich ci e as tabelas também.

 

No meu servidor local "LOCALHOST" com php 5.4 funciona tudo direitinho.

 

O que acontece é no servidor de hospedagem

Servidor Kinghost, Linux, php 5.3

 

Banco configurado igual.

se colocar as tabelas em utf8_genetal_cli, dá no mesmo.

 

No servidor as letras com caracteres exemplo:

ç, ê, é, ã, õ

 

Grava em minúscula.

O que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia!

 

Na hora da conexão com o banco já tentou passar o charset a ser utilizado?

 

mysql_set_charset('utf8', $conexao);

 

$mysqli->set_charset('utf8'));

 

Atenciosamente,

Caio Rodrigues

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim Caio no formulário de visualização faço assim

$query = mysql_query("SET NAMES UTF8");
$query = mysql_query("SELECT * FROM tom WHERE cod = $cod");

 

aí vem tudo certo.

 

mas só no localhost, no servidor externo não.

 

tentei colocar todo o banco e tabelas em utf8 aí não funciona nem no localhost

 

Vou dar uma olhada no link do angelorubin

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá

O meu php ini esta configurado com defaut_charset utf8.

 

no servidor deve estar com iso-8859-1

 

setei meu php ini com iso-8859-1 e o erro apareceu aqui.

 

Está gravando correto porem o erro apresenta no envio da pagina do formulário para a pagina de

gravação php.

ela recebe çççç em minúsculo.

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.