Ver Mensaje Individual
  #120 (permalink)  
Antiguo 24/05/2010, 03:37
Avatar de Heli0s
Heli0s
 
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Seguridad en PHP [Importante];

Pues sobre seguridad en Sql server no estoy muy puesto, así que al leer tu pregunta me he informado, por lo visto no hay función similar, y aún usando la función de mysql_real_escape_string con sql server no añadiría seguridad, ya que los caracteres de escape son diferentes

Cita:
sql server has different escape characters than Mysql, so no, the Mysql real escape string functions won't help you there. They'll still work, but they won't give the correct escape characters.
sql server uses the ' (single quote) as the escape character, so you'll need to do a find/replace on your string to add a ' in front of all the characters sql server doesn't like. Usually an apostrophe itself is the biggest problem, so I usually use:

function escapeSingleQuotes($string){
//escapse single quotes
$singQuotePattern = "'";
$singQuoteReplace = "''";
return(stripslashes(eregi_replace($singQuotePatter n, $singQuoteReplace, $string)));
}
Traducción:

Cita:
Sql server tiene diferentes caracteres de escape que mysql, así que no, la función mysql_real_escape_string no te añadirá seguridad. Las funciones funcionarían, pero no pondrán el carácter de escape correcto.
Sql server usa la ' (comilla simple) como carácter de escape, así que necesitaras hacer una función de encontrar/reemplazar para añadir la ' en los caracteres que sql server no acepte. Normalmente un apostrofe es el mayor problema, yo normalmente uso:
function escapeSingleQuotes($string){
//escapse single quotes
$singQuotePattern = "'";
$singQuoteReplace = "''";
return(stripslashes(eregi_replace($singQuotePatter n, $singQuoteReplace, $string)));
}
Un saludo

Fuentes: http://www.webmasterworld.com/php/3487262.htm