Ir para conteúdo
Fórum Script Brasil
  • 0

Como inserir no BD texto formatado?


quinhosp

Pergunta

Estou desenvolvendo um sistema de notícias. Insiro o texto no banco de dados atarv's de um form, porém quando vou imprimir o texto ta todo junto.

Preciso que o texto seja impresso na tela do mesmo modo que inseri.

Como faço isso?

Inserir.php

<?php

    include "../conexao_db.php";
/*
 * monta query em SQL para insercao
 */
$sql = "INSERT INTO tb_noticias (nome,  data, titulo, resumo, texto) 
VALUES (
'".$_POST['nome']."', 
NOW(), 
'".$_POST['titulo']."',
'".$_POST['resumo']."',
'".$_POST['texto']."'
)";

/*
 * executa a query
 */
$sql = mysql_query($sql)
or die ("Houve erro na gravação dos dados.");

?>
mostar.php
<?php
    include "conexao_db.php";
    $sql = "SELECT * FROM tb_noticias WHERE ver = '1' ORDER BY id DESC LIMIT 5";

/*
 * executa e trata a consulta
 */
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta");
if(@mysql_num_rows($resultado) == 0) //or die("Nenhum registro encontrado")
{
    echo "Nenhum registro encontrado";
}

/*
 * fazendo um loop para mostrar os resultados
*/
else
{
    while ($linha=mysql_fetch_array($resultado))
    {
           $novadata = substr($linha['data'],8,2) . "/" . 
           substr($linha['data'],5,2) . "/" . 
           substr($linha['data'],0,4);

           echo "<b>Código da Notícia</b>: {$linha['id']} <br />";
           echo "Autor: {$linha['nome']} <br />";
           echo "Data: $novadata <br />";
           echo "Título: {$linha['titulo']} <br />";
           echo "Resumo:<a href = consultar_todas.php?id=".$linha['id'].">\t".$linha['resumo']."</a>";


           echo "<hr />";
    }
}

?>

Editado por Jonathan Queiroz
Adcionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

Então ESerra!

Olha só, eu digito no form, ele insere no mysql pelo inserir.php e depois eu mostro as notícias pelo mostrar.php.

eu coloquei a função que me disse aqui.

mostrar.php

echo nl2br("Resumo:<a href = consultar_todas.php?id=".$linha['id'].">\t".$linha['resumo']."</a>");

mas saiu tudo junto ainda.

se puder me ajudar!

grato

Link para o comentário
Compartilhar em outros sites

  • 0

não deu não!!!!!!!!!

antes etava assim

Código da Notícia: 30

Autor: Teste Teste

Data: 24/07/2009

Título: Testando Agora

Resumo:Testeando de novo porque?

agora depois desta linha de comando que você passou, o texto do resumo desceu

Código da Notícia: 30

Autor: Teste Teste

Data: 24/07/2009

Título: Testando Agora

Resumo:

Testeando de novo porque?

Link para o comentário
Compartilhar em outros sites

  • 0
Algué pode me ajudar?? Como inserir e imprimir texto formatado em banco de dados

Não são permitidos up's de acordo com a regra 3.8 (ver regras)

3.8 Não é permitida a postagem de mensagens com a finalidade de manter o tópico no início da lista (up), nem de mensagens que não se refiram ao assunto do tópico (flood). Caso isso ocorra, as mensagens serão excluídas e os autores, advertidos.

Mas como você quer imprimir seu texto ?

Em forma de tabelas, com cada item separado do outro ?

Se for, deixe o HTML assim?

<table>
<tr>
<td>Nome</td>
<td>Texto</td>
</tr>
<tr>
<td>Jonathan</td>
<td>blablabla</td>
</tr>
</table>

Link para o comentário
Compartilhar em outros sites

  • 0

Troca esse textarea por um editor visual (fckeditor, tinymce, etc...), pois você não está realmente formatando o texto no textarea, e a saída dificilmente vai ser igual, enfim, com um editor visual tudo será HTML e você saberá exatamente como vai ficar.

Link para o comentário
Compartilhar em outros sites

  • 0

Acho que o que ele quer é que a formatação geral do texto (espaçamentos, etc.) fique igual ao textarea

É isso ?

Se for em relação à questão de espaçamentos tente assim:

echo "<pre>$texto</pre>";

A tag pre serve para indicar que o texto deverá ser escrito pré-formatado

Link para o comentário
Compartilhar em outros sites

  • 0

Jonathan, deu certo. Quando inseri a tag <PRE> no arquivo que mostra texto ele apareceu o jeito que foi inserido.

Porém quando mostrado no arquivo mostra.php ele aparece maior do que a página e faz com que apareça uma barra de rolagem na horizontal.

Já tentei de todo jeito diminuir o modo de visusalização.

Mesmo assim não consegui. Identifiquei que é por causa da tag <PRE> e quando tiro consigo formatar o layout do texto com o height.

Você pode me ajudar?

Link para o comentário
Compartilhar em outros sites

  • 0

Bem depois de teres usado a tag <pre></pre> deves padroniza-la a partir do CSS como por exemplo:

pre{ font-family:'helvetica';

font-size: 14px; }

No script acima voçê estara indicando a font e o tamanho da mesma pra todas as tags pre do seu site...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...