Estoy realizando una consulta a mi sistema pero ocurre un problema. Resulta que necesito saber el valor de varios campos de una misma tabla dependiendo siempre de un conjunto de condiciones. He aqui el codigo.
Código PHP:
<?
include 'clases/clssentenciasmysql.php';
$consulta=new clssentenciasmysql;
$rows=$consulta->consultar();
foreach ($rows as $row) {
extract ($row,EXTR_PREFIX_SAME, "soft");
}
?>
<form id="form2" name="form2" method="post" action="consulta.php">
<center><legend>CODIGO DE EQUIPO:</legend></center>
<center>
<p>
<input type="text" id="codigo" name="codigo" value="" />
<button type="submit" class="boton">Consultar</button>
</p>
<p> </p>
<div align="left">
<table width="100%" border="1">
<tr>
<td><? echo $responsable; ?></td>
<td><? echo $ubicacion; ?></td>
<td></td>
<td></td>
</tr>
<tr>
<td><? echo 'Hardware: '.$tipo_h ?></td>
<td><? echo $modelo ?></td>
<td><? echo $marca ?></td>
<td><? echo $serial ?></td>
<td><? echo $observaciones_h?></td>
</tr>
<tr>
<td><? echo 'Software: '.$tipo_s ?></td>
<td><? echo $licencia ?></td>
<td><? echo $version ?></td>
<td><? echo $fabricante ?></td>
<td><? echo $observaciones_s ?></td> <td>
</tr>
</table>
Alli hago el llamado a la siguiente funcion.
Código PHP:
function consultar() {
$mysqli = new mysqli('localhost', 'root', 'root123', 'soptecvnzla');
if ($mysqli->connect_errno)
{
echo "Error en Conexión: " . $mysqli->connect_error;
}
extract($_POST);
$sql= "SELECT *
FROM
hardware,
caracteristicas_hardware,
software,
caracteristicas_software,
equipo
WHERE
equipo.codigo = caracteristicas_hardware.codigo
AND
caracteristicas_hardware.id_hardware = hardware.id_hardware
AND
equipo.codigo = caracteristicas_software.codigo
AND
caracteristicas_software.id_software = software.id_software
AND
'$codigo' = `equipo`.`codigo`";
$result=$mysqli->query($sql);
if (!$result) {
echo("Error al consultar" . $mysqli->error);
}
$rows = array();
while ($row = $result->fetch_array()) {
$rows[]=$row;
}
return $rows;
}
El detalle esta en que al momento de imprimir me muestra solo el primer juego de variables por así decirlo, en el siguiente fragmento de codigo
Código PHP:
<tr>
<td><? echo $responsable; ?></td>
<td><? echo $ubicacion; ?></td>
<td></td>
<td></td>
</tr>
<tr>
<td><? echo 'Hardware: '.$tipo_h ?></td>
<td><? echo $modelo ?></td>
<td><? echo $marca ?></td>
<td><? echo $serial ?></td>
<td><? echo $observaciones_h?></td>
</tr>
<tr>
<td><? echo 'Software: '.$tipo_s ?></td>
<td><? echo $licencia ?></td>
<td><? echo $version ?></td>
<td><? echo $fabricante ?></td>
<td><? echo $observaciones_s ?></td> <td>
</tr>
Alli solo me muestra 1 Software y 1 Hardware. Cuando en realidad el codigo hala muchos software y hardware junto a su licencia, version, fabricante... ETC de cada uno de ellos. Quiero poder mostrar todos esos valores. Agradezco de antemano.