Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

30-01-2013 17:34

Fala Galera, tudo bem?

Estou fazendo um form onde os campos são gravados em um banco de dados Microsoft SQL Server.

Esta funcionando tudo certo, mas quando vai acento para o banco de dados ele le tudo errado os acentos.

No Mysql se resolve colocando o seguinte na pag. PHP:
header('Content-Type: text/html; charset=utf-8'); mysql_set_charset('utf8');

Agora nesse Microsoft SQL Server não da certo.

Alguem sabe como corrigir isso?

Obrigado

MOVIDO PARA SEÇÃO CORRETA
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

30-01-2013 17:39

Dá uma olhada nesse link http://support.microsoft.com/kb/232580
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

31-01-2013 16:49

Fala Web, blz?

Obrigado pelo link, mas la não achei nada em php, apenas em asp.

Acho que o problema está no php mesmo viu.

É esse link mesmo? Não teria outra luz?

Abs
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

31-01-2013 17:43

Tenta antes de inserir os dados no bd, passar a função htmlentites()

echo htmlentities("é"); // é
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

01-02-2013 14:35

Coloquei isso: echo htmlentities("ã"); // é

Daí apareceu o seguinte: ã

Segue codigo
<td colspan="2" valign="top" id="texto"> <input name="RazaoSocial" type="text" class="form" id="RazaoSocial" size="97" /> <? echo htmlentities("ã"); // &eacute; ?> </td>

0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

01-02-2013 14:36

Onde deveria colocar isso?

Ta certo daquele jeito?

Desculpe a demora
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

01-02-2013 15:35

Seria para passar a variável formatada para o input. Por exemplo, você tem um input name palavra. Antes de inserir no bd, passa a formatação.

$palavra = $_POST['palavra']; por $palavra = htmlentities($_POST['palavra']);

Dessa forma, o texto vai formatado para o bd, sem a acentuação. Na hora de exibir o texto não precisa formatar, é só exibir normal, que o navegador interpreta corretamente.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

01-02-2013 18:10

vou testar aqui parceiro!
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

01-02-2013 18:16

Cara não deu... a palavra Razão gravou assim: Raz&Atilde;&pound;o

Olha como fiz:
$RazaoSocial = htmlentities($_POST['obrigRazaoSocial']);code] Onde "obrigRazaoSocial" é o campo do meu form. O form é preenchido e chama um arquivo cadastra.php que está assim: [i][b](como pode ver achei varias coisas na net, acho q o seu é o que ta mais perto, pq antes ele gravava caractere "zoado", agora ele grava o &Atilde; pelo menos)[/b][/i] [code]<? setlocale(LC_ALL, "pt_BR"); header('Content-type: text/html; charset=SQL_Latin1_General_CP850_CI_AI'); include('config/conexao.php'); ?> <? $RazaoSocial = htmlentities($_POST['obrigRazaoSocial']); //$RazaoSocial = $_POST['obrigRazaoSocial']; $NomeFantasia = $_POST['obrigNomeFantasia']; $CNPJ = $_POST['obrigCNPJ']; $Email = $_POST['obrigEmail']; $NomeContato = $_POST['obrigNomeContato']; $Telefone = $_POST['obrigTelefone']; $Telefone2 = $_POST['Telefone2']; $Tipo = $_POST['Tipo']; $Obs = $_POST['Obs']; $query = "INSERT into EmpresaSolicitando (Analisado, EmailEnviado, DataSolicitacao, RazaoSocial, NomeFantasia, CNPJ, Email, NomeContato, Telefone, Telefone2, Tipo, Obs) values ('0', '0', Getdate(), '$RazaoSocial', '$NomeFantasia', '$CNPJ', '$Email', '$NomeContato', '$Telefone', '$Telefone2', '$Tipo', '$Obs')"; $rs= mssql_query($query); ?>

Sera que falta alguma coisa?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

01-02-2013 18:40

Mas a ideia seria gravar assim mesmo. No caso o acento é retirado.

Você citou no inicio do post que os caracteres quando tinham acentos, estavam indo incorreto para o banco de dados. A função htmlentities() converte os caracteres acentuados para evitar esse problema.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

04-02-2013 10:03

Até ai tudo bem...

Mas eu preciso, que quando no form seja preenchido "Razão Social" por exemplo, seja exibido "ã" e não 'Raz&Atilde;&pound;o'.

Tem como isso sera?

Pq depois, vou precisar carregar esses campos e quando está vindo ta vindo errado tmb.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

04-02-2013 10:30

A função contrária a função htmlentities(), ou seja, a função inversa, é a html_entity_decode(). Segue um exemplo

$var = "Razão"; $converte = htmlentities($var); // CONVERTENDO PARA O BD echo $converte."<br />"; // MOSTRANDO VALOR CONVERTIDO NA TELA echo html_entity_decode($converte); // REVERTENDO O VALOR

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

04-02-2013 10:49

Agora entendi... mais ou menos rs

Funcionou, mas agora tenho que aplicar no meu form, por exemplo no campo que puxa o valor do bd.

Se tiver algum outro topico de como fazer isso agradeço, mas vou tentando por aqui tambem

Obrigado
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

04-02-2013 13:04

Você pega a variável do bd que vem com o valor, e aplica abaixo

<?php echo html_entity_decode($aqui); ?>
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

04-02-2013 15:21

Deu certo!!!!

Uma parte rs.

Fiz um teste, onde eu gravo por exemplo: "Café" e ele mostra no BD: "Caf&Atilde;&copy;"

Ai quando chamo ele no php com o html_entity_decode ele vem Café bonitinho. muito obrigado!

Agora o problema real é o seguinte: rs

O desenvolvedor do banco de dados, fez uma tabela chamada ESTADO e outra chamada CIDADE, onde tem cadastrado todos os estados e todas as cidades, então elas estão ligadas, cada estado tem um id, e a cidade x esta ligada a esse id do estado. Por exemplo Florianopolis tem um id de cidade e tem tmb um id de estado, onde a tabela estado tem seu id do estado de Santa Catarina.

Até ai tudo bem né rs... só que nessa tabela estado, por exemplo o estado de SÃO PAULO, está escrito com til normal e não &atilde;, ai quando chamo ele, vem um quadrado no lugar do acento, ou caractere estranho sabe.

Além de eu ter que cadastrar no banco o nome certo CAFÉ e não o nome codificado.

Isso é o que está sendo o grande problema pra mim, será que tem como puxar um dado que está escrito sem ser HTml, e será que tem como mandar um dado sem que fique como codigo e sim com o acento normal

Obrigado por enqto.

Abs
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

04-02-2013 17:32

Se você fizer uma query para renomear os textos, passando a função htmlentities(), daria certo?
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

04-02-2013 18:20

Rapaz acho que seria uma boa ideia.

Fiz assim mas ele gravou os caracteres diferentes, rs, veja se é isso que vc pensou:

function trocar_acentos ($RazaoSocial) { $RazaoSocial = str_replace('&Atilde;&pound;','ã',$RazaoSocial); return $RazaoSocial; } $RazaoSocial = trocar_acentos (htmlentities($_POST['obrigRazaoSocial']));

No BD Gravuo isso:
Nome da RazÒo Social

Antes gravava isso:
Nome da Raz&Atilde;&pound;o Social

Sera que é isso mesmo?

Vlw
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

04-02-2013 19:15

A ideia seria fazer o update direto, dentro de uma consulta.

$query=mysql_query("SELECT * FROM suatabela");

while($dados=mysql_fetch_array($query)) {
extract($dados);

$novo_valor = htmlentities($coluna_com_acentos);

mysql_query("UPDATE suatabela SET coluna_com_acentos='$novo_valor' WHERE coluna_id='$coluna_id'");

}

Como pode observar, é feito uma consulta simples, no caso seria para listar os valores da tabela. Só que foi adicionado um UPDATE dentro do while. A função dele, é pegar o valor da coluna com acento "$novo_valor" e passar o htmlentities(), depois, atualizar tudo, baseado em cada id da linha existente.

Passa esse script uma vez. Se possível testa antes, em uma tabela de testes.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

04-02-2013 22:54

Viu testar sim, amanhã cedo.
Mas antes, lembrando que não é mysql e sim SQL server!

Será que funciona se executar como mssql?
Abs e até amanhã!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

05-02-2013 09:27

Ai não sei. Tem que o comando certo de consulta e update no SQL, para testar.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Acentuação SQL + Php

05-02-2013 18:13

Muito obrigado por enquanto, mas não consegui resolver rs.

Ficou mais complicado ainda pq não foi eu que fiz esse bd, e sql nem manjo muito tmb.

Mas obrigado por enquanto, a solução temporária, é tirar os acentos, tentar trocar os acentos tipo "ã" por "a"

Qq coisa eu grito!

Obrigado e um abraço
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17230
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Acentuação SQL + Php

05-02-2013 19:24

Blz.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado