PHP - Unir dos foreach

 
Vista:
sin imagen de perfil
Val: 17
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Unir dos foreach

Publicado por Fran (8 intervenciones) el 23/06/2019 21:52:00
Tengo dos códigos, uno para crear usuarios y otro para kardex. ¿Cómo puedo hacer para que salga todo en una sola tabla?.

1. Código de los usuarios con los siguientes datos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php $users = PersonData::getClients();
if(count($users)>0){
    // si hay usuarios
    ?>
    <table class="table table-bordered table-hover">
    <thead>
    <th>Nombre </th>
    <th>Direcci&oacute;n</th>
    <th>NIT o DUI</th>
    <th></th>
    <th>Alumno</th>
    <th>Grado y Secci&oacute;n</th>
    <th></th>
    <th>Factura</th>
    <th>Total</th>
    <th>Motivo</th>
    </thead>
    <?php
    foreach($users as $user){
        ?>
        <tr>
        <td><?php echo $user->name;?></td>
        <td><?php echo $user->phone2; ?></td>
        <td><?php echo $user->address2; ?></td>
        <td></td>
        <td><?php echo $user->lastname;?></td>
        <td><?php echo $user->address1; ?></td>
        <td></td>
        <td><?php echo $user->email2; ?></td>
        <td><?php echo $user->email1; ?></td>
        <td><?php echo $user->phone1; ?></td>
 
        <td style="width:130px;">
        <a href="index.php?view=editclient&id=<?php echo $user->id;?>" class="btn btn-warning btn-xs">Editar</a>
        <a href="index.php?view=delclient&id=<?php echo $user->id;?>" class="btn btn-danger btn-xs">Eliminar</a>
        </td>
        </tr>
        <?php
 
    }
}else{
    echo "<p class='alert alert-danger'>No has registrado todavía ningún cliente.</p>";
}
?>

2. Código para el kardex con los siguientes datos:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php $products = ProductData::getAll();?>
<?php if(count($operations)>0):?>
<table class="table table-bordered">
	<thead>
		<th>Fecha</th>
		<th>Factura</th>
		<th>Cliente</th>
		<th>Nacionalidad</th>
		<th>Producto</th>
		<th>Unidad</th>
		<th>Operacion</th>
		<th>Cantidad</th>
		<th>Precio</th>
 
	</thead>
<?php foreach($operations as $operation):?>
	<tr>
		<td><?php echo $operation->created_at; ?></td>
		<td> <?php echo $operation->email1; ?></td>
		<td> <?php echo $operation->name; ?></td>
		<td> El Salvador</td>
		<td><?php echo $operation->getProduct()->name; ?></td>
		<td> c/u </td>
		<td><?php echo $operation->getOperationType()->name; ?></td>
		<td><?php echo $operation->q; ?></td>
		<td>$ <?php echo $operation->getProduct()->price_in; ?></td>
 
	</tr>
<?php endforeach; ?>
 
</table>
 
<?php else:
// si no hay operaciones
?>

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Unir dos foreach

Publicado por Mauro (1037 intervenciones) el 24/06/2019 01:17:23
No veo por qué querrías hacer eso... si los foreach recorren arreglos diferentes, ¿cuál sería la idea de unirlos en uno solo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 17
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Unir dos foreach

Publicado por Fran (8 intervenciones) el 24/06/2019 01:41:18
Me hace falta que en el reporte segundo me aparezca el nombre y el email1 del primero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Unir dos foreach

Publicado por joel (1269 intervenciones) el 24/06/2019 19:45:54
Si los dos arrays tienen la misma cantidad de elementos, puedes hacerlo con un bucle for... algo así:

1
2
3
4
5
6
7
<?php
$lista1=Array(1,2,3,4,5,6,7,8,9);
$lista2=Array("a","b","c","d","e","f","g","h","i");
 
for ($i=0;$i<count($lista1);$i++) {
    echo $lista1[$i]." - ".$lista2[$i]."<br>";
}

Esto te serviría?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar