<?php
$hostname = 'nome_servidor';
$username = 'nome_usuario';
$password = 'senha';
$database = 'nome_banco';
try {
$pdo = new PDO("mysql:host=$hostname;dbname=$database;charset=utf8", $username, $password,
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
echo 'Conexao efetuada com sucesso!';
}
catch(PDOException $e){
echo $e->getMessage();
}
?> |
<?php
$hostname = 'nome_servidor';
$username = 'nome_usuario';
$password = 'senha';
$database = 'nome_banco';
try {
$pdo = new PDO("mysql:host=$hostname;dbname=$database;charset=utf8", $username, $password,
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
echo 'Conexao efetuada com sucesso!';
}
catch(PDOException $e){
echo $e->getMessage();
}
?>
Cara, você resolveu meus problemas. Antes eu usa iso-8859-1 e não tinha problema com caracteres acentuado no meu bd, mas vi que a maioria dos sites usam utf-8 e resolvi aderir também, mas os dados no bd sempre vinha com acentuação errada, o problema era só no bd, nas páginas view ficava tudo certo, mas ver as tabelas no bd erradas me deixava incomodado. Agora, graças a você está tudo certo. Obrigado
Muito obrigado cara! Me salvou!!!!
Muito Obrigado!
show, muito bom, claro e objetivo, parabéns!
continuem assim…
Linhadecomando sempre dando show, continuem assim!
Vlw pelo compartilhamento.
S2
Abraços!
Minha BD está configurada com UTF-8:
$DB_conn = new PDO(‘mysql:host=’ . $DB_host . ‘; dbname=’ . $DB_name, $DB_user, $DB_pass);
$DB_conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$DB_conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$DB_conn->exec(‘set names utf8’);
e tenho uma Tabela que preciso inserir dados com acentos:
‘CREATE TABLE `’ . $DB_table2 . ‘` (
`cliente` varchar(50) DEFAULT NULL,
`endereco` varchar(100) DEFAULT NULL,
… outros campos …
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE latin1_swedish_ci;’
Quando tento inserir dados com acentos no campo ‘endereço’
$sql2 = ‘INSERT INTO ‘ . $DB_table2 . ‘ (`cliente`, `endereco`) VALUES (“‘ . $p_cliente . ‘”, “‘ . $p_end . ‘”)’;
$rs2 = $DB_conn->prepare($sql2);
$rs2->execute();
recebo a seguinte mensagem de erro:
Fatal error: Uncaught PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column ‘endereco’ at row 1 in C:\Sistema\of_query.php:26 Stack trace: #0
Entretanto a informação que está sendo inserida para teste é curta, apenas o nome da cidade com acento: “Ji-Paraná”
Muito obrigado man.
Muito obrigado! Show de bola.
Show cara! Salvou minha vida!
Cara, me salvou!! Muito obrigado!
Mandou bem demais!!!
Salvou mais um
Obrigado, vlws.
Muito obrigado.
Cara, eu não sei como te agradecer. Eu não sou da área, mas faço algumas coisas para agilizar meu trabalho. Criar um certificado por exemplo, usando o PHP Word… Nada para uso externo, só meu. As vezes a gente pergunta para alguma alguma coisa e a pessoa diz para gente estudar… Eu fico feliz quando vejo alguém como você ensinando, sem julgar e apresentado uma solução que funciona!
OBRIGADO. MIL VEZES OBRIGADO!
Valeu Gerfson.
Valeu pela dica 😉
Obrigado man.
Cara, eu nem costumo comentar esses posts. Mas esse aqui salvou vidas. Tô quase 24 horas sem dormir tentando resolver esse problema. Muito Obrigado!