addslashes()
पूरी तरह से पर्याप्त नहीं है, लेकिन PHP का mssql पैकेज कोई अच्छा विकल्प प्रदान नहीं करता है। बदसूरत लेकिन पूरी तरह से सामान्य समाधान डेटा को हेक्स बाइटस्ट्रिंग के रूप में एन्कोड कर रहा है, यानी
$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) . ')
');
mysql_error()
समतुल्य है mssql_get_last_message()
।