Как экранировать одинарные кавычки в php для строки tsql (ms sql)

как я могу избежать одиночных кавычек в функции вещи? Я подключаю Microsoft SQL с PHP.

$hcode = $_GET['hcode'];
$sql = "SELECT AB.HCode, STUFF(AB.Name1,1,6, '') FROM Article AB WHERE Mandant=1 AND Language= 'EN' AND HCode= '".$hcode."' AND AB.Name1 IS NOT NULL";
$result = sqlsrv_query($conn, $sql);

0

Решение

Чтобы экранировать строки с одинарными кавычками для MS SQL, нам нужно экранировать их, добавив еще одну одинарную кавычку.

Следующая функция делает это. Итак, вы можете попробовать использовать эту функцию:

public static function mssql_escape($unsafe_str)
{
if (get_magic_quotes_gpc())
{
$unsafe_str = stripslashes($unsafe_str);
}
return $escaped_str = str_replace("'", "''", $unsafe_str);
}
//for example $unsafe = "AB'CD'EF";
$escaped = mssql_escape($unsafe);
echo $escaped;// Would output the escaped string as  "AB''CD''EF"
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]