PHP - Actualizar base sin refrescar

 
Vista:
Imágen de perfil de Luis
Val: 25
Ha disminuido su posición en 148 puestos en PHP (en relación al último mes)
Gráfica de PHP

Actualizar base sin refrescar

Publicado por Luis (30 intervenciones) el 13/09/2016 18:52:02
Hola, buenos días. A efectos de ir aprendiendo estoy armando gradualmente un carrito de compras .
Actualmente estoy con la parte de alta, modificacion y baja de productos.
La idea es tener un formulario con los campos de los productos vacío, y en la misma página una tabla que me muestre todos los artículos ( en principio todos, mas tarde lo haré x categorias ó paginado ) .
En la última columna de la tabla inserto vinculo con el label editar , y guardo el ID del producto.
Llegué hasta aquí, ya que si llamo a un php me refresca la pagina , yo necesito que al clickear en editar , el form se cargue con los datos de ese registro , y luego de esa misma pagina poder actualizar mediante update.

Necesito ayuda de como hacerlo, todo lo que ayude .
Paso el código de los 2 forms comprometidos :


//////////////////////////////////////////////////////////////////////////////////
articulos_abm.php
//////////////////////////////////////////////////////////////////////////////////

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
<html>
  <head>
  <title>Registro de Artículos</title>
   <script src="jquery-3.1.0.js" type="text/javascript"></script>
  </head>
  <body>
		<form name="nuevo_articulo" action="" onsubmit="">
			<h2>Nuevo Artículo</h2>
				<table>
                <tr>
                	<td>Código</td><td><label><input name="nombre" type="text" /></label></td>
               	</tr>
                <tr>
					<td>Descripción</td><td><label><input type="textarea" name="descripcion"></label></td>
				</tr>
                <tr>
                    <td>Cantidad</td><td><label><input name="cantidad" type="text" /></label></td>
				</tr>
                <tr>
                    <td>Costo</td><td><label><input name="costo" type="text" /></label></td>
				</tr>
                <tr>
                    <td>Precio Venta</td><td><label><input name="precio1" type="text" /></label></td>
				</tr>
                <tr>
                    <td>Categoría</td><td><label><input name="categoria" type="text" /></label></td>
				</tr>
                <tr>
                   	<td>&nbsp;</td><td><label><input type="submit" name="enviar" value="Grabar" /></label></td>
                </tr>
                </table>
		</form>
 
		<div id="resultado"><?php include('consulta.php');?></div>
 
    </body>
</html>


//////////////////////////////////////////////////////////////////////////////////
consulta.php
//////////////////////////////////////////////////////////////////////////////////

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
<?php
 
include('conexion.php');
 
?>
<html>
<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <script src="jquery-3.1.0.js" type="text/javascript"></script>
</head>
<body>
 
<?php
//consulta todos los productos
        $sql="SELECT * FROM `productos` ORDER BY descripcion ASC";
        $result = mysqli_query($con, $sql);
?>
 
<?php
    echo "<table rules='all';style='color:#000099';width:'80%';>";
    echo "<tr style='background:#9BB;'>'";
	echo "<td width='180'>Artículo</td>";
	echo "<td width='250'>Descripción</td>";
	echo "<td width='40'>Costo</td>";
    echo "<td width='40'>Precio</td>";
	echo "<td width='40'>Stock</td>";
    echo "<td width='80'>Categoría</td>";
    echo "<td width='40'>imagen</td>";
    echo "<td width='40'>&nbsp;</td>";
    echo "</tr>";
 
    while ($filas=mysqli_fetch_array($result)) {
        echo "<tr>";
        echo "<td width='180'>".$filas['nombre']."</td>";
        echo "<td width='250'>".$filas['descripcion']."</td>";
        echo "<td>".$filas['costo']."</td>";
        echo "<td>".$filas['precio']."</td>";
        echo "<td>".$filas['stock']."</td>";
        echo "<td width='80'>".$filas['categoria']."</td>";
        echo "<td>".$filas['imagen']."</td>";
        echo'<td><a href="editar.php?id=' . $filas['id'] . '">Editar</a></td>';
        echo "</tr>";
      }
?>
    </table>
    </body>
</html>
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 Luis
Val: 25
Ha disminuido su posición en 148 puestos en PHP (en relación al último mes)
Gráfica de PHP

Actualizar base sin refrescar

Publicado por Luis (30 intervenciones) el 14/09/2016 01:40:52
Gracias amigo ... buenísimo tu código ...
Lo voy a estudiar porque es demasiado nuevo este tema para mi ... y me cuesta bastante entenderlo ...
Si no te es molestia te pediré alguna aclaración en la medida que avanzo ..
En el index.html dice :
<!-- Esta tabla presenta los datos de la base -->

Ahi se supone debo hacer un bucle en php para llenar las filas ?

Gracias !
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 Alpanpan
Val: 198
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Actualizar base sin refrescar

Publicado por Alpanpan (94 intervenciones) el 14/09/2016 02:01:55
Así es.
Esto no es un carro de la compra, así que no hace lo que buscas.
Lo que más te interesa es en el.archivo útiles.js el apartado donde pone $("input").chage.... Que es donde se hace la llamada a AJAX, y después el archivo grabar.PHP, que es el que hace los cambios en la base de datos, y devuelve los resultados a AJAX.
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