Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/11/2013, 15:50
santunvel
 
Fecha de Ingreso: enero-2013
Mensajes: 54
Antigüedad: 11 años, 10 meses
Puntos: 0
No ejecuta sentencia sql por ser caracter especial

Tengo el Siguiente codigo
Código PHP:
$bd_host "localhost"//el host
$bd_usuario "root"//ususario de bd
$bd_pass "";  //contraseña de la bd
$bd_base "bd"//nombre de la bd
$bd_port=""// este vacio
$conn_bd mysql_connect($bd_host,$bd_usuario,$bd_pass) or die("Error en la conexión a la base de datos");
    
mysql_select_db($bd_base$conn_bd);
    
    
    
$user=níño;
//$user="admin";
$user=(utf8_decode(htmlentities($user)));


    
$sql="SELECT * FROM usuarios WHERE user='$user'";
    
$result mysql_query($sql,$conn_bd);
    if (
mysql_num_rows($result)==1){
         
$usuario2=utf8_decode(htmlentities(mysql_result($result,0,"user")));;
    echo 
$usuario2;    
    }
    else
    {
        echo 
"No existe ese usuario";
        } 
Cuando intento dandole valor a la variable $user el valor da admin, si funciona, pero cuando le doy el valor de níño no ejecuta el $sql y por lo tanto me manda el mensaje diciendo que "No existe ese usuario" cuando se que si existe porque esta en la bd, estoy seguro que es por tener caracteres especiales, y el utf8_decode(htmlentities($user) si funciona, pero solo para imprimir, no con sql
Código PHP:
$sql="SELECT * FROM usuarios WHERE user='$user'"