Cómo pasar apostrofias de áreas de texto a MySQL usando PHP
Tengo un área de texto donde los usuarios agregan notas también. En la siguiente página utilizo el$_POST[Comments]
para mostrar lo que estaba escrito. Tengo un botón de edición para volver atrás y ver lo que se escribió y editar las notas, pero cuando muestro el$_POST[Comments]
Se muestra todo hasta un apóstrofe.
Ejemplo:
Originalmente escrito:Let's try this.
Al editar:Let
Ahora, cuando lo paso al servidor para hacer una adición de SQL, uso la siguiente función para protegerme contra la inyección de SQL
function keepSafe($value) {
if (get_magic_quotes_gpc()) {
$value = stripslashes($value);
}
if (!is_numeric($value)) {
$value = "'" . mysqli_real_escape_string($value) . "'";
}
return $value;
}
Lo siguiente es lo que uso para formatear la entrada para la inserción de SQL.
$Comments = str_replace("\n","<br />",$_POST['CustComments']);
$Comments = keepSafe($_POST['Comments']);
Necesito poder ver todos los apóstrofes en la sección de notas al editar antes del envío. Y quiero asegurarme de que, cuando lo envíe, sea un código seguro para evitar la inyección de SQL.