Como passar as apostrofias das áreas de texto para o MySQL usando PHP
Eu tenho uma área de texto que os usuários adicionam notas também. Na próxima página eu uso o$_POST[Comments]
para mostrar o que foi digitado. Eu tenho um botão de editar para voltar e ver o que foi digitado e editar as notas, mas quando eu mostrar o$_POST[Comments]
mostra tudo até um apóstrofo.
Exemplo:
Originalmente digitado:Let's try this.
Ao editar:Let
Agora, quando eu passar para o servidor para fazer um add SQL eu uso a seguinte função para proteger contra injeção SQL
function keepSafe($value) {
if (get_magic_quotes_gpc()) {
$value = stripslashes($value);
}
if (!is_numeric($value)) {
$value = "'" . mysqli_real_escape_string($value) . "'";
}
return $value;
}
A seguir é o que eu uso para formatar a entrada para inserção de SQL.
$Comments = str_replace("\n","<br />",$_POST['CustComments']);
$Comments = keepSafe($_POST['Comments']);
Eu preciso ser capaz de ver todos os apóstrofos na seção de notas ao editar antes do envio. E quero ter certeza de que, quando eu enviar, é um código seguro impedido por injeção de SQL.