PHP - Traer identificador de una tabla mysql

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

Traer identificador de una tabla mysql

Publicado por Max (8 intervenciones) el 22/02/2021 19:02:55
Hola

Tengo una consulta sobre como traer una id o identificador de un tabla de datos que se llena por mysql. La idea en mostrar detalles (más datos) según la fila que haya seleccionado el usuario. Expongo mi codigo:

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
<table id="datos" class="display table table-responsive table-hover table-bordered text-center" style="width: 100%">
    <thead>
        <tr class="bg-primary">
            <th>N° Compra</th>
            <th>Fecha</th>
            <th>Nombre</th>
            <th>Direccion</th>
            <th>Ingresos</th>
            <th>Gastos</th>
            <th>Ganancia</th>
            <th>Detalle</th>
        </tr>
    </thead>
<tbody>
<?php
require 'db_com.php';
$sql="SELECT * from tbl_compra";
$result=mysqli_query($conexion, $sql);
 
while ($mostrar=mysqli_fetch_array($result)) {
    ?>
    <tr>
        <td><?php echo $mostrar['num_com'] ?></td>
        <td><?php echo $mostrar['fecha'] ?></td>
        <td><?php echo $mostrar['nombre'] ?></td>
        <td><?php echo $mostrar['direccion'] ?></td>
        <td>$<?php echo number_format($mostrar['ingresos'], 0, ',', '.') ?></td>
        <td>-$<?php echo number_format($mostrar['gastos'], 0, ',', '.') ?></td>
        <td>$<?php echo number_format($mostrar['ganancia'], 0, ',', '.') ?></td>
        <td><a href="detalleCom.php?$mostrar[num_com]" role="button" class="btn btn-info btn-sm shadow-none" id="detalles">Ver</a></td>
    </tr>
    <?php
}
?>
</tbody>
Aca estoy llenando una tabla con datos extraídos de la base de datos. En la tabla hay una columna llamada detalles en donde cada fila tiene un boton "Ver" el cual redirige a la página detallesCom.php. La idea es tomar la id (num_com) y mostrar los datos que faltan (que ya están en esa base de datos) en forma más ordenada.

Esto es lo que tengo en el archivo detallesCom.php

1
2
3
4
5
6
7
8
9
10
11
<?php
require 'db_com.php';
 
$extraerdato = mysqli_query("SELECT * FROM tbl_compra WHERE num_com=$num_com");
$fetch = mysqli_fetch_array($extraerdato);
$nombre = $fetch['nombre'];
$direccion = $fetch['direccion'];
 
echo "Datos asociados con la id: $nombre<br/>$direccion";
 
?>

La idea es que se muestren todos los datos asociados a esa id (no sé si me explico bien). Estoy probando con 2 datos solo hasta saber si la sintaxis del código funciona correctamente.

El archivo db_com.php contiene los datos de conexión a la bdd.

Agradeceria cualquier ayuda
Saludos
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 joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Traer identificador de una tabla mysql

Publicado por joel (1269 intervenciones) el 22/02/2021 20:07:03
Hola Max, es mucho mejor que asignas el valor a una variable... y mucho cuidado con mezclar codigo de PHP con HTML...

Prueba a modificar esta linea:
1
<td><a href="detalleCom.php?$mostrar[num_com]" role="button" class="btn btn-info btn-sm shadow-none" id="detalles">Ver</a></td>
por esta:
1
<td><a href="detalleCom.php?nc=<?php echo $mostrar[num_com]?>" role="button" class="btn btn-info btn-sm shadow-none" id="detalles">Ver</a></td>


En el archivo detallesCom.php
Puedes cambiar esta linea:
1
$extraerdato = mysqli_query("SELECT * FROM tbl_compra WHERE num_com=$num_com");
por esta:
1
$extraerdato = mysqli_query("SELECT * FROM tbl_compra WHERE num_com=".$_GET["nc"]);


Recuerda verificar siempre el valor que te viene de la web!!!
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: 19
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Traer identificador de una tabla mysql

Publicado por Max (8 intervenciones) el 22/02/2021 22:23:16
Hola Joel, muchas gracias por tu respuesta. He logrado obtener id selecionado pero no logro mostrar un valor del array en una variable.
Aca esta el código que modifique con tu ayuda:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
require 'db_com.php';
 
$extraerdato = "SELECT * FROM tbl_compra WHERE num_com=".$_GET["nc"];
$result = mysqli_query($conexion, $extraerdato);
$row = array();
?><pre><?php
while ($fetch[] = mysqli_fetch_array($result));
print_r($fetch);
?></pre><?php
$nombre = $fetch['nombre'];
$direccion = $fetch['direccion'];
 
echo "Datos asociados con la id: ". $nombre . $direccion;
 
?>

y aqui esta el resultado del array ordenado:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Array
(
    [0] => Array
        (
            [0] => 8
            [num_com] => 8
            [1] => 2021-02-22
            [fecha] => 2021-02-22
            [2] => Juan Perez
            [nombre] => Juan Perez
            [3] => Las Acacias 246
            [direccion] => Las Acacias 246
            [4] => algo
            [descripcion] => algo
            [5] => 150000
            [ingresos] => 150000
            [6] => 50000
            [gastos] => 50000
            [7] => 100000
            [ganancia] => 100000
        )
 
    [1] =>
)

Por ejemplo, en las variables $nombre y $direccion quiero mostrar los datos respectivamente pero no logro llegar a ellos. Me falta algo más?
Quedo atento
Saludos
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: 393
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Traer identificador de una tabla mysql

Publicado por Jefferson (203 intervenciones) el 23/02/2021 03:08:45
Hola amigo y con el permiso de Joel

Para que te complicas la vida usando array?
Me parece que estás copiando y pegando.

Simplemente con hacer el bucle a $result tienes lo que buscas

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 19
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Traer identificador de una tabla mysql

Publicado por Max (8 intervenciones) el 23/02/2021 04:25:54
Hola Jefferson, Tenias toda la razón. muchas gracias por tu ayuda. Siempre tiendo a complicarme mas de lo normal.
Saludos
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