Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/12/2015, 08:31
jonyjdv
 
Fecha de Ingreso: julio-2014
Mensajes: 115
Antigüedad: 10 años, 3 meses
Puntos: 1
Problema con real_escape_string y funcion

Hola a todos tengo el siguiente codigo:
Código PHP:
    function nuevos_datos($conexion$consulta$escapar_datos){


        require(
$_SERVER['DOCUMENT_ROOT'].$conexion);
        
$SQL_insert = new mysqli($db_host$db_user$db_pass$db_name);

        if(
$escapar_datos==true){
            
$consulta $SQL_insert->real_escape_string($consulta);
        }

        if (
mysqli_query($SQL_insert$consulta)) {
            return 
true;
        } else {
            return 
false;
        }

        
mysqli_close($SQL_insert);

    } 
Con esa funcion pretendo que a parte de insertar datos en la bbdd se pueda escapar los caracteres especiales para hacerlo un poco mas seguro, pero por mucho que me devano los sesos no consigo pasarle todas las variables post del formulario, tiene que ser una funcion porque lo pretendo usar para varios scripts, he pensado en modificar el codigo de forma que en la variable $consulta seaun array con todas las variables post ¿que opinan?

el problema es que si en consulta tengo esto:
Código PHP:
$consulta='UPDATE `cuento` SET `visitas`=`visitas`+1 WHERE `id_opinion`='Texto a insertar'';

//real_escape_string lo convierte en:

$consulta='UPDATE `cuento` SET `visitas`=`visitas`+1 WHERE `id_opinion`=\'Texto a insertar\''
como consecuencia no acttualiza el registro

Muchas gracias