Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich mit PHP Zeichenfolgen maskieren und Fehler in SQL Server-Abfragen behandeln?

Wie kann ich mit PHP Zeichenfolgen maskieren und Fehler in SQL Server-Abfragen behandeln?

Susan Sarandon
Freigeben: 2024-12-13 16:45:10
Original
396 Leute haben es durchsucht

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

Escaping von Zeichenfolgen in SQL Server mit PHP: Alternativen zu mysql_real_escape_string()

Während mysql_real_escape_string() von PHP häufig zum Escapen von Zeichenfolgen verwendet wird, für die es gedacht ist MySQL-Datenbankabfragen, es ist nicht für Microsoft SQL Server geeignet. In diesem Artikel werden Alternativen sowohl für das String-Escape als auch für den Fehlerabruf in SQL Server mit PHP untersucht.

String-Escapeping

Anstelle von addslashes(), was nicht völlig ausreichend ist, wird das Die Hex-Byte-String-Kodierungsmethode bietet eine umfassendere Lösung:

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

Eine abstraktere Implementierung:

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) . ')
');
Nach dem Login kopieren

Fehlerabfrage

Die Funktion mssql_get_last_message() dient als Äquivalent zu mysql_error() im Kontext von SQL Server und liefert detaillierte Informationen zu allen Es sind Fehler aufgetreten.

Das obige ist der detaillierte Inhalt vonWie kann ich mit PHP Zeichenfolgen maskieren und Fehler in SQL Server-Abfragen behandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage