pontesh 0 Denunciar post Postado Julho 9, 2009 Ola Hinom. Estou precisando muito de sua ajuda ou do Fabyo. Se lembra do controle de estoque? Tenho um formulário em que preencho os campos com katakana, hiragana, kanji e ou romaji. Tenho um arquivo que recebe os dados e os grava em variáveis; até aqui tudo bem! Meu problema: Quando este arquivo lança os dados no banco de dados perco os katakanas, hiraganas e kanjis. <!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=shift_jis" /> <ti....... Os campos no mysql estão Collation ujis_japanese_ci. Sei que você pode me ajudar! Muito grato. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Julho 9, 2009 Utilize UTF-8, tanto para o HTML quando para o MySQL, e obviamente para o PHP também. Certifique-se de que mb_internal_encoding() do PHP também esteja com o mesmo enconding. Apesar de ser irrelevante para alguns casos, é recomendável manter tudo com o mesmo padrão. Exemplo de configuração em UTF-8 PHP, HTML, MySQL - Charset Encoding http://forum.imasters.com.br/index.php?showtopic=340459 obs: no MySQL, defina "utf8_general_ci" tanto para o collation da tabela, quanto para o collation dos campos necessários Exemplo, criando tabela com charset e collate UTF8 CREATE TABLE `encoding` ( `id` int(4) NOT NULL auto_increment, `text` varchar(100) NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; Após criar a tabela é possíve alterar o charset para cada campo. Exemplo ALTER TABLE encoding MODIFY text VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci; Compartilhar este post Link para o post Compartilhar em outros sites
pontesh 0 Denunciar post Postado Julho 9, 2009 Hinom ou Fabyo como faço? Preciso gravar hiraganas, katakanas e kanjis no banco de dados. cadastro.php ..... <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja-JP" lang="ja-JP"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> ..... <form id="form1" name="form1" method="post" action="incluir.php"> ...... <div id="tudo"> <td width="119" bgcolor="#FFFFFF"><label>分類</label></td> <td width="361" align="left" valign="middle" bgcolor="#FFFFFF"><div align="left"> <input name="txt_bunrui" type="text" id="txt_bunrui" size="20" /> </div></td> </tr>................... incluir.php <?php require_once('Connections/zm.php'); ?> <!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" xml:lang="ja-JP" lang="ja-JP"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>gravar dados</title> <?php $txt_bunrui = $_POST['txt_bunrui']; $txt_meishou = $_POST['txt_meishou']; $txt_kataban = $_POST['txt_kataban']; $txt_kounyugyousha = $_POST['txt_kounyugyousha']; $txt_kosuu = $_POST['txt_kosuu']; $txt_tani = $_POST['txt_tani']; $txt_tanka = $_POST['txt_tanka']; $txt_kakaku = $_POST['txt_kakaku']; $txt_zaiko = $_POST['txt_zaiko']; $txt_nyuukayotei = $_POST['txt_nyuukayotei']; $txt_hattyubi = $_POST['txt_hattyubi']; $txt_hattyusuu = $_POST['txt_hattyusuu']; $txt_yoteibi = $_POST['txt_yoteibi']; $txt_nouhinbi = $_POST['txt_nouhinbi']; $txt_nyuukakasuu = $_POST['txt_nyuukakasuu']; $txt_bikou = $_POST['txt_bikou']; mysql_select_db($database_zm, $zm); $query_estoq = "INSERT INTO mteq.zm (zm_id , zm_bunrui , zm_meishou , zm_kataban , zm_kounyugyousha , zm_kosuu , zm_tani , zm_tanka , zm_kakaku , zm_zaiko , zm_nyuukayotei , zm_hattyubi , zm_hattyusuu , zm_yoteibi , zm_nouhinbi , zm_nyuukakasuu , zm_bikou) VALUES ( NULL , '$txt_bunrui', '$txt_meishou', '$txt_kataban', '$txt_kounyugyousha', '$txt_kosuu', '$txt_tani', '$txt_tanka', '$txt_kakaku', '$txt_zaiko', '$txt_nyuukayotei', '$txt_hattyubi', '$txt_hattyusuu', '$txt_yoteibi', '$txt_nouhinbi', '$txt_nyuukakasuu', '$txt_bikou');"; mysql_query($query_estoq, $zm) or die(mysql_error()); ?>Até aqui tudo bem! Sei que esta tudo bem porque estou exibindo os dados passados para o incluir.php, mas no banco de dados aparecem outros símbolos no lugar dos caracteres japoneses. Uma luz por favor. Abraços. Compartilhar este post Link para o post Compartilhar em outros sites
pontesh 0 Denunciar post Postado Julho 10, 2009 Matias Rezende, muito agradecido. Um grande abraço. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Julho 10, 2009 pontesha, você está usando shift_jis é um conjunto de caracteres em desuso assim como o antigo e terrível "bake-moji" "euc-jp" também está em desuso, portanto utilize utf-8, que é o formato internacionalizado. os conjuntos de caracteres japoneses atuais são 3 shift_jis euc-jp iso-2022-jp não é recomendável o uso de nenhum desses conjuntos, pois estão sendo desencorajados para fins de desuso euc-jp em especial é o pior de se lidar e já está em desuso. utilize utf-8 contudo, escolha o que for conveniente para você. quanto ao que você comentou sobre os carcteres estranhops no banco de dados, isso é "normal". é falha do gerenciador de banco de dados que você utiliza. a maioria dos gerenciadores de banco de dados não suporta o conjunto de caracteres multibyte de países da ásia, grécia, oriente médio, etc.. isso deve-se ao fato de que esses sfotwares são produzidos por programadores que vivem nos EUA ou europa, por isso, o suporte é falho. para gerenciar de forma efetiva, procure por gerenciadores de banco de dados desenvolvidos por empresas locais. mas nao recomendo pois geralmente são muito limitados e sem muito suporte. o melhor software gerenciador com suporte a multiidiomas é o "EMS MySQL Manager" Compartilhar este post Link para o post Compartilhar em outros sites
pontesh 0 Denunciar post Postado Setembro 26, 2009 Muito agradecido a todos pela ajuda. Hinom, Mateus Rezende e Fabyo valeu. Respeitosamente Silvio Pontes. pontesha, você está usando shift_jis é um conjunto de caracteres em desuso assim como o antigo e terrível "bake-moji" "euc-jp" também está em desuso, portanto utilize utf-8, que é o formato internacionalizado. os conjuntos de caracteres japoneses atuais são 3 shift_jis euc-jp iso-2022-jp não é recomendável o uso de nenhum desses conjuntos, pois estão sendo desencorajados para fins de desuso euc-jp em especial é o pior de se lidar e já está em desuso. utilize utf-8 contudo, escolha o que for conveniente para você. quanto ao que você comentou sobre os carcteres estranhops no banco de dados, isso é "normal". é falha do gerenciador de banco de dados que você utiliza. a maioria dos gerenciadores de banco de dados não suporta o conjunto de caracteres multibyte de países da ásia, grécia, oriente médio, etc.. isso deve-se ao fato de que esses sfotwares são produzidos por programadores que vivem nos EUA ou europa, por isso, o suporte é falho. para gerenciar de forma efetiva, procure por gerenciadores de banco de dados desenvolvidos por empresas locais. mas nao recomendo pois geralmente são muito limitados e sem muito suporte. o melhor software gerenciador com suporte a multiidiomas é o "EMS MySQL Manager" Compartilhar este post Link para o post Compartilhar em outros sites