Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/09/2006, 08:08
univ
 
Fecha de Ingreso: septiembre-2006
Mensajes: 21
Antigüedad: 18 años, 6 meses
Puntos: 0
Comportamiento del mysql_fetch_array()

Hola a todos.... Bueno tratando de entender a PHP... me tope con el siguiente detalle: tengo una clase que la uso para crear la conexion a la BBDD y para la busqueda de registros, el tema es que en la funcion de "busqueda" utilizo el mysql_fetch_array():
esta es la clase "clase_mysql.inc.php":
<?php
class conn{
/* variables de conexión */
var $connx;
var $resultado;
var $error;
var $row;

/*Funcion de conexion a la BD*/
function conexion($bd, $host, $user, $pass){
$this->connx=mysql_connect($host, $user, $pass);
mysql_select_db($bd,$this->connx);
}

/*Funcion de busqueda*/
function busqueda($strSQL){
$this->resultado=mysql_query($strSQL, $this->connx);
$this->row=mysql_fetch_array($this->resultado, MYSQL_ASSOC);
if (!$this->row){
$this->error=true;
}else{
$this->error=false;
}
}
}
?>

Parte del codigo que instancia a esta clase es el siguiente:

<?php

require("clase_mysql.inc.php");
$bd=new conn();
$bd->conexion("maestropersonal","localhost","root","") ;
$bd->busqueda("SELECT * FROM bpe_users WHERE usu_id=" . $_POST["txtCarnet"]);

$usuario = $bd->row['perfil'];
echo "USUARIO: " . $usuario;
?>

El problema es el siguiente: tengo entendido que si usas mysql_fetch_array con el parametro MYSQL_ASSOC, puedes hacer referencia a los campos por sus nombres, pero no entiendo que pasa que no me arroja ningun resultado, pero si le quito el parametro y hago referencia a los compos con los indices en vez de sus nombres, me da resultado.

En realidad no es un problema ya que la consulta la realiza y me arroja resultados, es mas curiosidad que cualquier otra cosa, ademas es mas facil hacer referencia por los nombre de los campos que por sus indices, o no...?

Gracias de antemano