Aqui el modelo de mi tabla:
Código MySQL:
Ver original
La consulta la quiero ver de la siguiente forma:
Por ejemplo para ver las empresas de una persona cuyo NUM_CED_EGR=15
Entonces me mostraria:
CEDULA
15
EMPRESAS
Empresa 1 , Empresa 2
Para hacer esta consulta, utilizo la funcion GROUP_CONCAT. Directamente en el motor la consulta me arroja los resultados esperados, pero al hacerla sobre php, no me arroja resultados
Aqui mi consulta en php:
Código PHP:
Ver original
<html> <head> </head> <body> <? //recibo el valor del textfield $cedula=$_POST['cedula']; //conexion con mySQL y con base de datos @ $db = new mysqli('localhost', 'root', 'root', 'egresados'); { echo ' Error: No se pudo conectar a la base de datos, consulte a su administrador. Por favor intente de nuevo!!.'; exit; } // consulta query="select e.NUM_CED_EGR, e.NOM_EGR, e.APE_EGR, GROUP_CONCAT(em.RAZ_SOC_EMP separator " - ") as empresas, from egresado e, empresa em, empresas_trabajo_egresado ete where ete.NIT_EMP=em.NIT_EMP and e.NUM_CED_EGR=ete.NUM_CED_EGR and e.NUM_CED_EGR='$cedula' GROUP BY (ete.NUM_CED_EGR)"; $result = $db->query($query); $num_results = $result->num_rows; // si no hay resultas if($num_results==0){ echo '<h2>El egresado no registra información laboral</h2>'; echo "<a href='buscar.php' a style='text-decoration:none;' > <p><b> Buscar nuevo egresado</b>.</a></p>"; exit; } echo '<p><br>'; for ($i=0; $i <$num_results; $i++) { $row = $result->fetch_assoc(); } $db->close(); ?> //Ahora por medio de cajas de texto muestro los resultados: CEDULA : <input type="text" name="cedula" id="cedula" readonly="readonly" value="<?php echo $row["NUM_CED_EGR"]?>"/> </br> NOMBRES: <input type="text" name="nombres" id="nombres" readonly="readonly" value="<?php echo $row["NOM_EGR"]?>"/> </br> EMPRESAS: <input type="text" name="empresa" id="empresa" readonly="readonly" value="<?php echo $row["empresas"]?>"/> <body> </html>
Intente haciendo la consulta asi pero no me funciono:
Código PHP:
Ver original
// consulta query="select e.NUM_CED_EGR, e.NOM_EGR, e.APE_EGR, GROUP_CONCAT(em.RAZ_SOC_EMP separator " - ") as empresas, from egresado e, empresa em, empresas_trabajo_egresado ete where ete.NIT_EMP=em.NIT_EMP and e.NUM_CED_EGR=ete.NUM_CED_EGR and e.NUM_CED_EGR='$cedula' GROUP BY (ete.'$cedula')";
Como puedo solucionar este problema, la funcion group_concat si sirve en php?
Agradezco me puedan colaborar