Insertar cadena con comillas simples ('
) o comillas dobles ("
) en mysql
Solo usa addslashes();
en Inserción y stripslashes();
para obtener datos.
$str = "Hello Friend's.. Hows you all"s.";
// Outputs: Hello Friend\'s..Hows you all\"s.
echo addslashes($str);
stripslashes — Cadena sin comillas citada con addslashes()
. Devuelve una cadena con las barras invertidas eliminadas. (\'
se convierte en '
y así sucesivamente.) Barras invertidas dobles (\\
) se convierten en una sola barra invertida (\
).
$str = "Hello Friend\'s.. Hows you all"s."; // Outputs: Hello Friend's.. Hows you all"s.
echo stripslashes($str);
Ahora llegamos al punto. Si insertamos una cadena en la base de datos con comillas simples o dobles como esta:
$str = “Hello Friend's.. Hows you all"s.”;
$query = “INSERT INTO tbl (description) VALUES (‘$str’)”;
Esto ocurrirá un error, pero si usamos addslashes($str)
funcione como a continuación y luego inserte en la base de datos, luego no se producirá ningún error.
$str = “Hello Friend's.. Hows you all"s.”;
$desc_str = addslashes($str);
$query = “INSERT INTO tbl (description) VALUES (‘$desc_str’)”;
de manera similar podemos usar stripslashes($str)
para imprimir ese valor de campo de tabla como este:
echo stripslashes($str);