Buenas amigos, tengo un problema. Se que la funcion mysql_fetch_all no existe en php por defecto. Por eso investigando pude dar con esta funcion:
Código PHP:
function mysql_fetch_all($res) {
$data = array();
while ($row = mysql_fetch_array($res))
$data[] = $row;
return $data;
}
Que aparentemente tiene la misma funcion que pg_fetch_all. Como sabemos esa funcion se encarga de guardar en un arreglo todos los registros de un resultado en específico, para que luego yo pueda recorrer ese arreglo con un foreach u otro ciclo.
Método buscar_datosestado:
Código PHP:
function buscar_datosestado($idestado){
$conectado = new clase_conexion();
$cadena = "SELECT * FROM estado WHERE id_estado=".$idestado;
$resultado = $conectado->ejecutarQuery($cadena);
if($resultado)
{
$resultado = mysql_fetch_all($resultado);
return $resultado;
}else
{
print("hubo un error en la consulta buscar datos direccion");
}
}
Coloco la Definicion de mi tabla estado:
Código:
CREATE TABLE `estado` (
`id_estado` int(4) NOT NULL,
`descripcion_estado` varchar(40) NOT NULL,
`id_region_estado` int(4) NOT NULL,
PRIMARY KEY (`id_estado`)
) ENGINE=innodb DEFAULT CHARSET=utf8;
Código PHP:
$estado = $clase->buscar_datosestado(1);
En este caso ese metodo me va a traer un solo registro con los datado que tenga el id 1.
Si yo hago un:
Código PHP:
print_r($estado)
El me muestra un solo registro con los datos del estado con id 1.
El problema es el siguiente, si yo intento hacer esto:
Código PHP:
print("Nombre del estado es: ".$estado[descripcion_estado]);
o esto:
Código PHP:
print("Nombre del estado es: ".$estado['descripcion_estado']);
En ninguno de los dos casos me muestra el nombre del estado (descripcion_estado).
Si yo hago esto:
Código PHP:
foreach($estado as $valor){
$estado = $valor['descripcion_estado'];
}
print("Nombre del estado es: ".$estado);
Si me muestra el nombre del estado.
Mi GRAN DUDA ES, como hacer para mostrar ese nombre de ese estado sin necesidad de un foreach, ya que es un solo registro y veo inecesario hacer un foreach para un solo registro.
Gracias y espero haberme explicado de la manera mas clara.