Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde, pessoal! Estou com o seguinte problema: Montei uma página de cadastro de solicitações, e até então ia tudo bem, até alguém resolver digitar na uma palavra entre aspas simples e... deu erro na hora de gravar... Bem, pesquisei e a solução que encontrei foi a seguinte:
$historico = str_replace("'", "*", $historico); pra gravar no banco e
$historico = str_replace("*", "'", $historico); pra exibir na tela
echo $historico;
Pra gravar deu certo, mas na hora de exibir, aparece assim:
Apenas \'teste\' pode \'ignorar\'
ou seja, ele traz as barra além das aspas
o que fazer pra corrigir isso?
Eu preciso gravar as aspas e depois visualiza-la!! Espero possam me ajudar :)
Deu erro ao gravar no banco...
Estou fazendo assim (de acordo com o que li naquele link que você me passou)
$texto = $_POST['historico'];
$registro = addslashes($texto);
$string = "$info\n-------------------------\n==> $datahora - $nome, comentou: \n$registro";
$sql="UPDATE st_solicitacao
SET historico= '".$string."'
WHERE id=".$_GET['solicitacao'];
essa variável $info vai armazenando os textos passados por post como se fossem uma conversa.
Só que dá erro... no erro retorna que está tentando gravar assim: \\\'teste\\\''
Consegui resolver da seguinte forma:
$registro = str_replace("'", "*", $texto); pra gravar
depois pra visualizar:
$texto2 = str_replace("*", "'", $texto); // nesse $texto tem o conteúdo gravado no banco
$historico = stripcslashes($texto2);
echo $historico;
Mesmo assim agradeço pela atenção!
Valeuuu!
O problema é que caso o usuário digite () => será salvo () só que será visualizado (')
Utilize stripcslashes() na hora de Visualizar os dados.
Desculpa por ter demorado pra responder!!
Eu não havia pensado nisso rsrs
Testei e deu certo!!
Muito Obrigada!!:)
veja se isso ajuda
http://php.net/manual/pt_BR/function.addslashes.php