• Resolvido klassikys

    (@klassikys)


    Pessoal, estou precisando inserir os posts do meu Blog em um site estático.
    O Blog está em um domínio e o site em outro.
    Bem, pelo que pesquisei preciso utilizar o FEED do meu Blog para poder fazer isso.
    Abaixo o código que utilizei:
    —————————

    $feed = "http://upware.com.br/feed";
    
    $xml = simplexml_load_file($feed);
    
    foreach($xml->channel->item as $posts) {
    	if($posts->category == 'Artigos'){
    	?>
    		<h2>
    		<a href="<?php echo $posts->link; ?>" title="<?php echo $posts->title; ?>"><?php echo $posts->title; ?></a>
    		</h2>
    		<?php echo $posts->category; ?>
    		<?php echo date("d-m-Y",strtotime($posts->pubDate)); ?>
    		<br>
    		<small><?php echo $posts->description; ?></small>
    		<?php
    		}
    	}
    	?>

    O problema está ocorrendo na acentuação.
    Minha página está com CHARSET=ISO-8859-1, fazendo com que todo o texto fique normal, porém os textos dos posts ficam com símbolos no lugar dos acentos.
    E quando eu mudo o CHARSET para UTF-8, os textos dos posts ficam corretos, porém o resto do site fica com símbolos.

    Como posso resolver esse problema?
    Existe algum charset que corrige tudo?

    Obrigado.

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • Meu caro,

    Faça uma cópia de bkp do seu banco, entre no phpmyadmin e mude o charset para que ambos fiquem com o mesmo tipo. Talvez resolva.

    abs

    George Campos
    http://www.georgecampos.me

    Criador do tópico klassikys

    (@klassikys)

    Olá George, obrigado pela atenção.

    Alterei as tabelas para o charset “latin1_swedish_ci”, pois no MySQL não encontrei o charset “ISO-8859-1”.

    Na página que listo os posts também configurei o mesmo charset “latin1_swedish_ci”.

    Bem, o problema continuo o mesmo, ao exibir os posts fica ok, porém o resto do texto fica com símbolos no lugar dos acentos.
    E se eu coloco o charset ISO na página, o texto fica ok, mas os posts não.

    Observações:
    ——————
    1-) Na base ele inserio como símbolo os caracteres que possuem acentos.
    2-) No próprio Blog o texto aparece normal;
    3-) Mudei o charset nas configurações do Blog para “Latin1”, mas aí todo o texto do painel de controle e do Blog ficou bagunçado, apenas os novos posts ficavam normal.

    Conclusão
    ——————-
    Bem, pelo que percebi o charset precisaria ser relamente o mesmo na base, na configuração do Blog e no site, porém no MySQL não tem o charset ISO-8859-1, e se eu mudar nas configurações do Blog todo o texto fica bagunçado.

    Será que não teria alguma forma de resolver isso?
    Por favor estou precisando muito desse recurso.
    Obrigado.

    Criador do tópico klassikys

    (@klassikys)

    George, conseguui resolver da seguinte forma utilizando a função utf8_decode().

    Ao dar o echo na variável utilizo o utf8_decode(). Dessa forma posso deixar o charset da página como ISO que o texto dos posts são exibidos normalmente.

    Peguei a solução desse post:
    http://br.forums.wordpress.org/topic/ultimos-post-em-um-site-estatico?replies=16

    Valeu pela ajuda.

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • O tópico ‘Problema com Charset’ está fechado para novas respostas.