Hola a todos, los molesto para ver si alguien me puede ayudar ya que necesitaría armar una función de siguente código, ya que sino cuando lo repito mas de una vez en una misma página me genera conflicto.
Me interesaría que el parámetro que se modifique sea la variable $buscar.
Código PHP:
//Buscamos Toda la información requerida para Hombres y Mujeres
$hombreconsultar=mysql_query("SELECT $buscar FROM 1_datos_contacto WHERE sexo='Masculino'");
$mujerconsultar=mysql_query("SELECT $buscar FROM 1_datos_contacto WHERE sexo='Femenino'");
//Creo un array con los datos de hombres obtenidos de la DB
while($infohombre=mysql_fetch_array($hombreconsultar))
{
$hombreduplicado[]=$infohombre["$buscar"];
}
//Eliminamos datos duplicados del array anterior (hombres)
$hombre=array_unique($hombreduplicado);
//Buscamos la cantidad de registros de hombres en la base de datos
foreach( $hombre as $value ) {
$canhombre[]=mysql_query("SELECT COUNT(*) FROM 1_datos_contacto WHERE $buscar='" . $value . "' AND sexo='Masculino'");
}
//Cantidad de Personas por cada país
foreach ($canhombre as $value) {
$resultadohombre[]=mysql_result($value , 0);
}
//echo $resultadohombre[0] . $hombre[0];
//echo $resultadohombre[1] . $hombre[1];
$hombresbuscar = array_combine($hombre, $resultadohombre);
//Comprobamos la relación entre los 2 arrays
/*foreach ($hombresbuscar as $key => $value) {
echo "En $key hay $value hombres.";
}*/
////////////////////////////////////////////////////////////////////////////
//Creo un array con los datos de mujers obtenidos de la DB
while($infomujer=mysql_fetch_array($mujerconsultar))
{
$mujerduplicado[]=$infomujer["$buscar"];
}
//Eliminamos datos duplicados del array anterior (mujers)
$mujer=array_unique($mujerduplicado);
//Buscamos la cantidad de registros de mujeres en la base de datos
foreach( $mujer as $value ) {
$canmujer[]=mysql_query("SELECT COUNT(*) FROM 1_datos_contacto WHERE $buscar='" . $value . "' AND sexo='Femenino'");
}
//Cantidad de Personas por cada país
foreach ($canmujer as $value) {
$resultadomujer[]=mysql_result($value , 0);
}
//echo $resultadomujer[0] . $mujer[0];
$mujeresbuscar = array_combine($mujer, $resultadomujer);
//Comprobamos la relación entre los 2 arrays
/*foreach ($mujeresbuscar as $key => $value) {
echo "En $key hay $value mujeres.";
}*/
///////////////////////////////////////////////
$result_array = array_intersect_assoc($hombresbuscar, $mujeresbuscar);
foreach ($result_array as $key => $value) {
$datosencomun[]=$key;
//echo $key;
}
$resultsolohombre = array_diff_assoc ($hombresbuscar, $mujeresbuscar);
foreach ($resultsolohombre as $key => $value) {
$datossolohombre[]=$key;
//echo $key;
}
$resultsolomujer = array_diff_assoc ($mujeresbuscar, $hombresbuscar);
foreach ($resultsolomujer as $key => $value) {
$datossolomujer[]=$key;
//echo $key;
}
$sumahombres= array_sum($hombresbuscar);
$sumamujeres= array_sum($mujeresbuscar);
$sumatotal = array_sum($hombresbuscar) + array_sum($mujeresbuscar);
Con esos datos, formo la siguiente tabla:
Código PHP:
<h3>Postulantes clasificados por Estado Civil según Género</h3>
<table width="90%" border="1" cellpadding="1">
<tr>
<td>Postulantes</td>
<td>Hombres</td>
<td>Muejeres</td>
<td>Total</td>
<td>Porcentajes</td>
</tr>
<?
for ($i=0;$i<count($datosencomun);$i++) {
$datos=$datosencomun[$i];
$datosnombre[]=$datosencomun[$i];
?>
<tr>
<td><? print $datosencomun[$i];?></td>
<td><? echo $hombresbuscar["$datos"];?></td>
<td><? echo $mujeresbuscar["$datos"];?></td>
<td><? echo $total = $hombresbuscar["$datos"] + $mujeresbuscar["$datos"];?></td>
<td><? $frecuencia[]= ($total / $sumatotal) * 100;
echo $mostrarfrecuencia = ($total / $sumatotal) * 100 . " %";?></td>
</tr>
<?
}
?>
<?
for ($i=0;$i<count($datossolohombre);$i++) {
$datos=$datossolohombre[$i];
$datosnombre[]=$datossolohombre[$i];
?>
<tr>
<td><? print $datossolohombre[$i];?></td>
<td><? echo $hombresbuscar["$datos"];?></td>
<td>0</td>
<td><? echo $total = $hombresbuscar["$datos"];?></td>
<td><? $frecuencia[]= ($total / $sumatotal) * 100;
echo $mostrarfrecuencia = ($total / $sumatotal) * 100 . " %";?></td>
</tr>
<?
}
?>
<?
for ($i=0;$i<count($datossolomujer);$i++) {
$datos=$datossolomujer[$i];
$datosnombre[]=$datossolomujer[$i];
?>
<tr>
<td><? print $datossolomujer[$i];?></td>
<td>0</td>
<td><? echo $mujeresbuscar["$datos"];?></td>
<td><? echo $total = $mujeresbuscar["$datos"];?></td>
<td><? $frecuencia[]= ($total / $sumatotal) * 100;
echo $mostrarfrecuencia = ($total / $sumatotal) * 100 . " %";?></td>
</tr>
<?
}
?>
<tr>
<td>Total</td>
<td><?php echo $sumahombres;?></td>
<td><?php echo $sumamujeres;?></td>
<td><? echo $sumatotal;?></td>
<td><? echo $sumafrecuencias = array_sum($frecuencia) . " %";?></td>
</tr>
</table>
Muchas gracias