mzaidan 2 Denunciar post Postado Março 3, 2015 Prezados, estou com um pequeno problema ao tentar gravar uns dados no banco de dados via input/submit Acontece que é uma frase em inglês, que possui uma aspa ' Texto: a nine's story building (dentre outros) O insert ta assim: "INSERT into tabela (campo1,campo2) values('$val','$id')" Ai, quando ele "mistura" a aspa do texto com a aspa da variável "$val" Como poderia resolver esse problema? Grato. Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Março 3, 2015 Escape as aspas os apóstrofos da sua string. Compartilhar este post Link para o post Compartilhar em outros sites
Ldovale 9 Denunciar post Postado Março 3, 2015 tenta, dá um echo e vê como fica o texto tem que aparecer com as /'bla bla bla /' $newString = preg_replace('/'/',' '\ ',$tuastring); Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Março 3, 2015 addslashes Se usar Prepared Statements ficará mais fácil. Com MySQLi ou PDO fica simples fazer isso Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Março 3, 2015 Certo. Mas, eu preciso gravar no banco com as aspas, ou, na hora de ler, aparecer elas. Dessa forma da certo? Compartilhar este post Link para o post Compartilhar em outros sites
Ldovale 9 Denunciar post Postado Março 3, 2015 Manda com, sem grilo Bom seria usar algo para previnir sql injection, mas ai é outra história. Pega esse básico primeiro, testa ai vê se funcionou. Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Março 3, 2015 Desculpem a ignorância, mas não consegui ainda. Eu tenho que ler com as aspas, pq não faz sentido alguém ler um texto em inglês assim: - The Many\'s house. Se eu gravar no banco assim, na hora ele puxa sem a barra? Não to entendendo. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Março 3, 2015 Para escapar as aspas: addslashes Para remover a barra invertida adicionado pela função anterior: stripslashes Não é necessário str_replace, muito menos preg_replace Compartilhar este post Link para o post Compartilhar em outros sites
Ldovale 9 Denunciar post Postado Março 3, 2015 É mano, o Beraldo tem razão, Bem mais simples $newString = addslashes($string); Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Março 3, 2015 Perfeito. Valeu, mestres. Compartilhar este post Link para o post Compartilhar em outros sites