Renato =) 0 Denunciar post Postado Setembro 2, 2008 Então galera, o negócio é o seguinte... Na hora de cadastrar alguma informação no meu site, eu tenho dificuldades quando coloco um apóstrofo (por causa do mysql) ou quando coloco uma aspa (por causa do input) Por exemplo, quando vou passar uma informação com aspas para um input em outra página, ele fica assim: <input name="nome" value=[b]"este é o "[/b][color=red]valor""[/color]> e quando uso apóstrofo, o problema é esse: mysql_query("INSERT INTO `tabela` (`texto`) VALUES ([b]'Este é o '[/b][color=red]texto''[/color]") onde negrito é o valor entendido e vermelho é o que sobrou e devia estar dentro... alguém sabe algum modo bom de driblar estes problemas? tentei htmlentities só que ele acabou afetando todas as tags de html onde usei... abraços! Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Setembro 3, 2008 você pode usar barra invertida para escapar as aspas q kiser... \' \" Compartilhar este post Link para o post Compartilhar em outros sites
Carbonni 0 Denunciar post Postado Setembro 3, 2008 Tenta usar str.replace http://www.php.net/str_replace Compartilhar este post Link para o post Compartilhar em outros sites
Renato =) 0 Denunciar post Postado Setembro 3, 2008 Deixa eu ver se eu entendi a idéia é só usar str_replace pra transformar " em \" e ' em \' ?? funciona? ô,ô eu to até pensando em fazer um outro caracter não utilizado pra apostrofo e aspas, algum código... †‡ pra aspas e ‡† pra apostrofo, aí na hora de cadastrar ele troca e na hora de mostrar ele troca também, mas acho meio chunchera hahahah Compartilhar este post Link para o post Compartilhar em outros sites
Mauro M. Pagnez 0 Denunciar post Postado Setembro 3, 2008 No manual do PHP, na parte de referências da linguagem, ensina a utilizar as aspas e o apóstrofo da maneira correta, utilizando escape e outras técnicas, além da sintaxe heredoc: http://br2.php.net/manual/pt_BR/language.types.string.php Nesta página também exitem referências a várias funções que estão relacionadas. Compartilhar este post Link para o post Compartilhar em outros sites
~TiuTalk~ 7 Denunciar post Postado Setembro 3, 2008 Amigo, é só pegar o valor e usar a função addslashes, por exemplo: $nome = $_POST['nome']; $nome = addslashes($nome); Ou, resumindo: $nome = addslashes($_POST['nome']); Isso vai fazer o ' virar \' e o " virar \", mas quando for inserido no MySQL, a barra sai, ficando só " ou ' mesmo! ^^ Isso se faz necessário por que o que delimita um pedaço de texto (string) no MySQL são as aspas... =) http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Ps.: Se for exibir a variavel no HTML, depois de usar o addslashes, usa o stripslashes pra remover as barras. =) Compartilhar este post Link para o post Compartilhar em outros sites