PHP - Tabla con datos de db en html y php

 
Vista:
sin imagen de perfil

Tabla con datos de db en html y php

Publicado por mauro (25 intervenciones) el 31/05/2016 02:37:30
Hola Sludos

Estoy tratando de crear una tabla para modificar registros en una db.
Actualmente tengo este codigo para la consulta..

1
2
3
4
5
6
7
8
9
10
11
12
13
$query="SELECT id, sector, servicio, nivel, precio, descarga, carga FROM precios";
$tabla=mysql_query($query);
 
if($fila=mysql_fetch_array($tabla) or die("Error en: $tabla: " . mysql_error())){
	$id=$fila["id"];
	$sector=$fila["sector"];
	$servicio=$fila["servicio"];
	$nivel=$fila["nivel"];
	$precio=$fila["precio"];
	$descarga=$fila["descarga"];
	$carga=$fila["carga"];
	}
?>

y este otro codigo para crear la tabla para desplegar los 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
45
46
47
48
<div class="row">
 
<div class="col-md-7">
	<!-- Titulo -->
	<div class="col-md-2">
		<label>ID:</label>
		<input type="text" class="form-control" name="id" id="id" value="<?php echo utf8_encode ($id); ?>" autocomplete="off">
	</div>
 
	<!-- Sector/tipo -->
	<div class="col-md-5">
		<label>Sector:</label>
		<input type="text" class="form-control" name="sector" id="sector" value="<?php echo utf8_encode ($sector); ?>" autocomplete="off" required>
	</div>
 
	<!-- Sector/tipo -->
	<div class="col-md-5">
		<label>Servicio:</label>
		<input type="text" class="form-control" name="servicio" id="servicio" value="<?php echo utf8_encode ($servicio); ?>" autocomplete="off" required>
	</div>
</div>
 
<div class="col-md-5">
	<!-- Sector/tipo -->
	<div class="col-md-3">
		<label>Nivel:</label>
		<input type="text" class="form-control" name="nivel" id="nivel" value="<?php echo utf8_encode ($nivel); ?>" autocomplete="off" required>
	</div>
 
	<!-- Sector/tipo -->
	<div class="col-md-3">
		<label>Precio:</label>
		<input type="text" class="form-control" name="precio" id="precio" value="<?php echo utf8_encode ($precio); ?>" autocomplete="off" required>
	</div>
 
	<!-- Descarga -->
	<div class="col-md-3">
		<label>Descarga:</label>
		<input type="text" class="form-control" name="descarga" id="descarga" value="<?php echo utf8_encode ($descarga); ?>" autocomplete="off" required>
	</div>
 
	<!-- Carga -->
	<div class="col-md-3">
		<label>Carga:</label>
		<input type="text" class="form-control" name="carga" id="carga" value="<?php echo utf8_encode ($carga); ?>" autocomplete="off" required>
	</div>
 
</div>


Sin embargo el codigo de arriba no es dinamico pues debo repetir el codigo una y otra vez para crear las filas que necesito (aprox 50).

Se que con una sentencia de control while y el metodo echo se puede generar una fila para cada registro de mi consulta en lugar de repetir el codigo tantas veces . Pero no me funciono y no obtuve el resultado deseado.

Les dejo el archivo que estoy utilizando con el codigo completo.

Como dato extra estoy usando boostrap.

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
sin imagen de perfil

Tabla con datos de db en html y php

Publicado por DAVID (129 intervenciones) el 31/05/2016 13:30:50
Hola,

Y porque no metes el código dentro del bucle inicial?? Necesitas que tenga algún valor especial, o te vale repetido? Es que no entiendo bien lo que necesitas.


Un saludo,
David
soluciones 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
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Tabla con datos de db en html y php

Publicado por kip (877 intervenciones) el 03/06/2016 07:03:58
Hola, hice algo sencillo a ver si te sirve, un tipo de paginacion pero adaptandome a como tu muestras los datos, podras avanzar de registro en registro.

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
 
    <?php
    session_start();
 
    if(isset($_SESSION['pag_num'])){
        if(isset($_GET['pag'])){
            $suma =$_GET['pag'] + ($_SESSION['pag_num']);
            if($_SESSION['num_total_datos'] < ($suma+1)){
                $_SESSION['pag_num'] = $_SESSION['num_total_datos'];
                echo "<script languaje=\"javascript\">alert('No existen mas registros')</script>";
            } else{
                $_SESSION['pag_num'] = $_GET['pag'] +  $_SESSION['pag_num'];
            }
            }
    } else {
        $_SESSION['pag_num'] = 0;
    }
 
    function obt_datos($columna,$num){
 
        $conex = mysqli_connect('localhost','root','','');
        $query="SELECT id, sector FROM precios";
        $tabla=mysqli_query($conex,$query);
 
        if($tabla=mysqli_query($conex,$query) or die("Error en: $tabla: " . mysql_error())){
 
            $num_datos=mysqli_num_rows($tabla);
            $_SESSION['num_total_datos']=$num_datos;
 
            if ( $_SESSION['pag_num'] < $num_datos){
 
                while (($row = mysqli_fetch_array($tabla,MYSQLI_ASSOC))) {
                    $result[] = $row[$columna];
                }
 
                echo utf8_encode($result[$num]);
 
            } else {
                echo 'Limite de registros alcanzado';
            }
 
 
        }
 
    }
 
    function pag_num(){
        $pag_num = $_SESSION['pag_num'];
        return $pag_num;
    }
    ?>
 
</head>
<div class="row">
 
    <div class="col-md-7">
        <!-- Titulo -->
        <div class="col-md-2">
            <label>ID:</label>
            <input type="text" class="form-control" name="id" id="id" value="<?php obt_datos('id',pag_num()); ?>" autocomplete="off">
        </div>
 
        <!-- Sector/tipo -->
        <div class="col-md-5">
            <label>Sector:</label>
            <input type="text" class="form-control" name="sector" id="sector" value="<?php obt_datos('sector',pag_num());  ?>" autocomplete="off" required>
        </div>
 
    </div>
 
    <a href="?pag=-1">Anterior</a>
    <a href="?pag=1">Siguiente</a>
</body>
</html>

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
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Tabla con datos de db en html y php

Publicado por kip (877 intervenciones) el 03/06/2016 07:37:43
Corregi algo, ya que al regresar hacia atras mostraba error, aqui esta corregido:

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
 
    <?php
    session_start();
 
    if(isset($_SESSION['pag_num'])){
        if(isset($_GET['pag'])){
            $suma =$_GET['pag'] + ($_SESSION['pag_num']);
            if($_SESSION['num_total_datos'] < ($suma+1)){
                $_SESSION['pag_num'] = $_SESSION['num_total_datos'];
                echo "<script languaje=\"javascript\">alert('No existen mas registros')</script>";
            } else{
                $_SESSION['pag_num'] = $_GET['pag'] +  $_SESSION['pag_num'];
                if ($_SESSION['pag_num'] <= -1){
                    echo "<script languaje=\"javascript\">alert('No es posible regresar mas')</script>";
                    $_SESSION['pag_num'] = 0;
                }
                }
            }
 
    } else {
        $_SESSION['pag_num'] = 0;
    }
 
    function obt_datos($columna,$num){
 
        $conex = mysqli_connect('localhost','root','db_pass','db_name');
        $query="SELECT id, sector FROM precios";
        $tabla=mysqli_query($conex,$query);
 
        if($tabla=mysqli_query($conex,$query) or die("Error en: $tabla: " . mysql_error())){
 
            $num_datos=mysqli_num_rows($tabla);
            $_SESSION['num_total_datos']=$num_datos;
 
            if ( $_SESSION['pag_num'] < $num_datos){
 
                while (($row = mysqli_fetch_array($tabla,MYSQLI_ASSOC))) {
                    $result[] = $row[$columna];
                }
 
                echo utf8_encode($result[$num]);
 
            } else {
                echo 'Limite de registros alcanzado';
            }
 
 
        }
 
    }
 
    function pag_num(){
        $pag_num = $_SESSION['pag_num'];
        return $pag_num;
    }
    ?>
 
</head>
<div class="row">
 
    <div class="col-md-7">
        <!-- Titulo -->
        <div class="col-md-2">
            <label>ID:</label>
            <input type="text" class="form-control" name="id" id="id" value="<?php obt_datos('id',pag_num()); ?>" autocomplete="off">
        </div>
 
        <!-- Sector/tipo -->
        <div class="col-md-5">
            <label>Sector:</label>
            <input type="text" class="form-control" name="sector" id="sector" value="<?php obt_datos('sector',pag_num());  ?>" autocomplete="off" required>
        </div>
 
    </div>
 
    <a href="?pag=-1">Anterior</a>
    <a href="?pag=1">Siguiente</a>
</body>
</html>

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