ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して SQL Server クエリで文字列をエスケープし、エラーを処理する方法

PHP を使用して SQL Server クエリで文字列をエスケープし、エラーを処理する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-12-13 16:45:10331ブラウズ

How to Escape Strings and Handle Errors in SQL Server Queries Using PHP?

PHP を使用した SQL Server での文字列のエスケープ: mysql_real_escape_string() の代替手段

PHP の mysql_real_escape_string() は、目的の文字列をエスケープするために広く使用されています。 MySQL データベース クエリではありません。 Microsoft SQL Serverに適しています。この記事では、PHP を使用した SQL Server での文字列のエスケープとエラー取得の両方の代替手段について説明します。

String Escaping

十分ではない addslashes() の代わりに、 16 進数バイト文字列エンコード方式は、より包括的なソリューションを提供します:

$unpacked = unpack('H*hex', $data);
mssql_query('
    INSERT INTO sometable (somecolumn)
    VALUES (0x' . $unpacked['hex'] . ')
');

より抽象的なソリューション実装:

function mssql_escape($data) {
    if(is_numeric($data))
        return $data;
    $unpacked = unpack('H*hex', $data);
    return '0x' . $unpacked['hex'];
}

mssql_query('
    INSERT INTO sometable (somecolumn)
    VALUES (' . mssql_escape($somevalue) . ')
');

エラー取得

mssql_get_last_message() 関数は、SQL Server のコンテキストで mysql_error() と同等の役割を果たし、エラーに関する詳細情報を提供します。エラーが発生しました。

以上がPHP を使用して SQL Server クエリで文字列をエスケープし、エラーを処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。