Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zangoliers

Qual o melhor para inserir textos?

Recommended Posts

Olá pessoal!

 

Tenho um campo na minha tabela chamado conteudo longtext, pegando referencias em livros diz que pode armazenar até 4.294.967.295 caracteres, a dúvida é o seguinte, os caracteres que se podem armazenar podem conter espaços, quebra de linhas, virgulas, pontos finais, ponto e virgula, parenteses, exclamações, interrogações, acentos etc ?

Pois estou tentando mas não obtive nenhum resultado positivo. E nos livros que tenho, dizem que não é retornado nehnum tipo de erro !

 

Estava usando varchar(255) que é o limite, porém meus textos são muito maiores que 255 caracteres.

 

Há uma outra forma ou solução ?

 

Agradecido pela atenção dispensada desde já,

 

Zangoliers

Compartilhar este post


Link para o post
Compartilhar em outros sites

O MYSQL não faz o escape dos textos que você coloca automaticamente. Se estiver utilizando PHP para inserir os dados na tabela, utilize no texto "mysql_real_escape_string()" antes de fazer o INSERT no MYSQL, deve sanar o seu problema.

Imaginando que o campo que você digita é um

<textarea></textarea>

Você teria que fazer, o INSERT assim

 

mysql_query(sprintf('INSERT INTO `tabela` (`campo_texto_grande`) VALUES("%s")', mysql_real_escape_string($_POST['textarea_com_texto'])));

Compartilhar este post


Link para o post
Compartilhar em outros sites

A escape tem que ser feito mesmo por você como mostra o amigo Paulo.

Qual conteúdo você está armazenando, HTML ??

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

O Código é este:

 

ADMNOTCIAS.PHP

 

<html>

<head>

<title>Administrando as notícias</title>

</head>

 

<body>

 

<font style="tahoma" size="5">

<p align="center">

Administração de Notícias

</p>

</font>

<table border="0" width="100%">

<tr>

<td width="50%" valign="top" bgcolor="#DFDFBF">

<h3 align="center">Noticias</h3>

<form method="submit" name="incluirnoticia" action="incluirnoticia.php" target="quadronoticias">

<font style="tahoma" size="2">

Título: <input type="text" name="titulo" value="" size="50" maxlength="30">

<br>Campo da Notícia<br>

<textarea name="conteudo" rows="8" cols="52"></textarea>

<br><br>

<input onmouseover=this.style.cursor="hand" type="submit" name="incluir" value="Incluir" style="border:0;height:20;width:72;background:#E8F3FD">

</font>

</form>

<form method="submit" name="exluirnoticia" action="excluirnoticia.php" target="quadronoticias">

<font style="tahoma size="1">

Registro: <input type="text" name="registro" value="" size="10">

<input onmouseover=this.style.cursor="hand" type="submit" name="excluir" value="Excluir" style="border:0;height:20;width:72;background:#E8F3FD">

</font>

</form>

</td>

<td>

<form method="submit" name="listarnoticias" action="listarnoticias.php" target="quadronoticias">

<p align="center"><input onmouseover=this.style.cursor="hand" type="submit" name="listar" value="Listar Notícias Cadastradas" style="border:0;height:18;width:175;background:#E8F3FD"></p></form>

<iframe align="center" name="quadronoticias" frameborder="0" valign="top" scrolling="1" height="240" src="listarnoticias.php" width="100%">

Seu Navegador NÃO oferece suporte a quadros!

</iframe>

</td>

</tr>

</table>

 

<p><br><center>

<a href="menu.php"><img src="img/btnvoltar.jpg" border="0" alt="Voltar" value="Voltar"></a>

</center>

 

</body>

</html>

 

 

 

E o incluirniticia.php

 

<html>

<head>

<title>Incluir Notícias</title>

</head>

 

<body>

 

<?php

include "base.php";

 

$result=mysql_query('insert into noticias(titulo,conteudo) values("'.$_REQUEST["titulo"].'","'.$_REQUEST["conteudo"].'");',$conexao) or die ("erro 001" . mysql_error());

if ($result)

{

echo 'Notícia incluída com sucesso!';

}

else

{

echo 'Esta notícia não pode ser incluída!';

}

?>

 

</body>

</html>

 

Então como ficaria meu incluirnoticia.php ?

 

 

Obs A tabela eu criei com LONGTEXT. conteudo LONGTEXT

 

Agradeco a atenção até agora de todos;

 

Zangoliers

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, tente utilizar esta função: http://br.php.net/manual/en/function.mysql-escape-string.php

 

Qualquer dúvida, continue o post!! Forte abraço!!

 

Hummmm Wagner fiquei confuso no link, daria para você me mostrar onde modifico meu código INCLUIRNOTICIA.PHP ?

 

Agradecido desde já;

 

Zangoliers http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

$result = mysql_query('insert into noticias(titulo,conteudo) values("'.mysql_real_escape_string($_REQUEST["titulo"]).'","'.mysql_real_escape_string($_REQUEST["conteudo"]).'");',$conexao)

mas só te digo, que atualmente, o código é beeeeem inseguro. você tá recebendo uma variável titulo e conteúdo DIRETO do browser, sem fazer qualquer modificação, e incluindo direto dentro da query do banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom tentei mas deu na mesma, quando insiro um texto muito longo nao vai, vou continuar no varchar(255) que me parece

que vai além dos 255..... nao sei !

 

Mas mesmo assim obrigadão !!!!

 

 

Agradecido;

 

Zangoliers

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.