Infoga sträng med enstaka citattecken('
) eller dubbla citattecken("
) i mysql
Använd bara addslashes();
i Insertion och stripslashes();
för att hämta data.
$str = "Hello Friend's.. Hows you all"s.";
// Outputs: Hello Friend\'s..Hows you all\"s.
echo addslashes($str);
stripslashes — Ta bort citatsträng som citeras med addslashes()
. Returnerar en sträng med omvända snedstreck borttagna. (\'
blir '
och så vidare.) Dubbla omvänt snedstreck (\\
) görs till ett enda omvänt snedstreck (\
).
$str = "Hello Friend\'s.. Hows you all"s."; // Outputs: Hello Friend's.. Hows you all"s.
echo stripslashes($str);
Nu kommer vi till saken. Om vi infogar sträng i databasen med enkel eller dubbel citattecken så här:
$str = “Hello Friend's.. Hows you all"s.”;
$query = “INSERT INTO tbl (description) VALUES (‘$str’)”;
Detta kommer att inträffa fel, men om vi använder addslashes($str)
fungerar som nedan och infogar sedan i databasen, så kommer inget fel att inträffa.
$str = “Hello Friend's.. Hows you all"s.”;
$desc_str = addslashes($str);
$query = “INSERT INTO tbl (description) VALUES (‘$desc_str’)”;
på samma sätt kan vi använda stripslashes($str)
för att skriva ut det tabellfältsvärdet så här:
echo stripslashes($str);