• Ir al contenido
  • Ir a la navegación
  • Ir al buscador
 
Infoudo
ING English
Directorio WAP para móvil, Tablet, iPhone o Smartphone

Centro de Noticias de la Universidad de Oriente

Categorías

 

Inicio  |  Contacto  |  Posts  |  TIENDA PUBLISHOP  |  Sobre nosotros  |  Registro y Planes  |  Pagos  |  Donaciones

Ver Código QR de esta página

Campaña #AyudemosaYuli  |  Campaña #AyudemosaStephany.  |  ¿Interesado(a) en cursos y resolución de ejercicios de materias prácticas? Para más información, contáctenos por: Teléfono: +58 (412) - 8226575. WhatsApp y Telegram: +58 (426) - 6836955 o escriba al correo: [email protected]. Únete al grupo: SISTEMAS (UDOMO).

[»] **Musica para tu celular

WEB TRANSLATOR

LINK for English Language

Use this link for translate into English


+ Buscar en InfoUDO

 

mysqli - panel para ABM de la tabla articulos

Tweet
 

domingo julio 10, 2016

Ahora implementaremos una serie de páginas para administrar la tabla artículos. Mostraremos en una tabla HTML todos los registros de articulos y un hipervínculo para borrar y otro para modificar los datos.

En la parte inferior dispondremos un hipervínculo para agregar artículos.

Básicamente lo nuevo es este panel de administración ya que en conceptos anteriores analizamos en forma individual como se efectúa el alta, la baja de registros y la modificación de datos.

La primer página a implementar es la de mantenimientoarticulos.php y su interfaz visual será similar a esta:

mantenimiento de articulos

El código de esta página es el siguiente:

<!doctype html>
<html>
<head>
  <title>Listado de artículos</title>
  <style>
  .tablalistado {
    border-collapse: collapse;
    box-shadow: 0px 0px 8px #000;
    margin:20px;
  }
  .tablalistado th{  
    border: 1px solid #000;
    padding: 5px;
    background-color:#ffd040;	  
  }  
  .tablalistado td{  
    border: 1px solid #000;
    padding: 5px;
    background-color:#ffdd73;	  
  }
  </style>
</head>  
<body>
  
  <?php
    $con=mysqli_connect("localhost","root","","base1") or 
      die("Problemas con la conexión a la base de datos");
	  
    $registros=mysqli_query($con,"select ar.codigo as codigoart,
                                         ar.descripcion as descripcionart,
                                         precio,
                                         ru.descripcion as descripcionrub 
                                         from articulos as ar
                                         inner join rubros as ru on ru.codigo=ar.codigorubro") or
      die(mysqli_error($con));
	 
    echo '<table class="tablalistado">';
    echo '<tr><th>Código</th><th>Descripción</th><th>Precio</th><th>Rubro</th><th>Borrar</th><th>Modificar</th></tr>';
    while ($reg=mysqli_fetch_array($registros))
    {
      echo '<tr>';
      echo '<td>';
      echo $reg['codigoart'];
      echo '</td>';	  
      echo '<td>';
      echo $reg['descripcionart'];	  
      echo '</td>';	  
      echo '<td>';
      echo $reg['precio'];	  
      echo '</td>';	  
      echo '<td>';
      echo $reg['descripcionrub'];	  
      echo '</td>';
      echo '<td>';
      echo '<a href="bajaarticulo.php?codigo='.$reg['codigoart'].'">Borra?</a>';
      echo '</td>';
      echo '<td>';
      echo '<a href="modificacionarticulo1.php?codigo='.$reg['codigoart'].'">Modifica?</a>';
      echo '</td>';      
      echo '</tr>';	  
    }	
    echo '<tr><td colspan="6">';
    echo '<a href="altaarticulo1.php">Agrega un nuevo artículo?</a>';
    echo '</td></tr>';
    echo '<table>';	
	
    mysqli_close($con);

  ?>  
</body>
</html>

Como podemos ver hemos agregado dos columnas en la tabla como diferencia con el concepto de listado que habíamos analizado.

La columna Borrar tiene por objetivo llamar a la página bajaarticulo.php pasando como parámetro el código de artículo que queremos borrar. Como podemos luego probar cuando pasamos la flecha del mouse sobre cada enlace "Borra?" veremos que el parámetro codigo es distinto para cada artículo.

Lo mismo hacemos para llamar a la página modificacionarticulo1.php donde también tenemos enviar el código de artículo que queremos borrar. La única diferencia con lo que habíamos visto anteriormente es que el código de artículo anteriormente se cargaba por teclado y ahora ya está inserto en cada hipervínculo.

Veamos ahora la página bajaarticulo.php, esta tiene por objetivo eliminar el articulo, el código fuente de esta página es:

<?php
    $con=mysqli_connect("localhost","root","","base1") or 
      die("Problemas con la conexión a la base de datos");
	  
    mysqli_query($con,"delete from articulos where codigo=$_REQUEST[codigo]") or
        die(mysqli_error($con));    
	
    mysqli_close($con);
    
    header('Location:mantenimientoarticulos.php');
?>  

Como podemos ver hemos implementado una página PHP pura, es decir no hay salida HTML. En esta página procedemos a borrar el registro de la tabla articulos teniendo en cuenta el codigo que llega como parámetro y lo recuperamos del vector asociativo $_REQUEST.

Luego de borrado procedemos a redireccionar a la pagina de mantenimientoarticulos.php la cual se refresca en pantalla en el navegador y vemos que no se encuentra el artículo que habíamos seleccionado previamente para borrar.

Las páginas para la modificación de articulos son:

<!doctype html>
<html>
<head>
  <title>Modificación de artículo.</title>
</head>  
<body>
  
  <?php
    $con=mysqli_connect("localhost","root","","base1") or 
      die("Problemas con la conexión a la base de datos");
	  
    $registro=mysqli_query($con,"select descripcion,precio,codigorubro from articulos where codigo=$_REQUEST[codigo]") or
      die(mysqli_error($con));
	 
    if ($reg=mysqli_fetch_array($registro))
    {
  ?>
    <form method="post" action="modificacionarticulo2.php">
      Descripción del artículo:
      <input type="text" name="descripcion" size="50" value="<?php echo $reg['descripcion']; ?>">
      <br>
      Precio
      <input type="text" name="precio" size="10" value="<?php echo $reg['precio']; ?>">      
      <br>      
      Rubro:
      <select name="codigorubro">
      <?php
      $registros2=mysqli_query($con,"select codigo,descripcion from rubros") or
        die(mysqli_error($con));
	  while ($reg2=mysqli_fetch_array($registros2))
      {
         if ($reg2['codigo']==$reg['codigorubro'])
           echo "<option value=\"".$reg2['codigo']."\" selected>".$reg2['descripcion']."</option>";         
         else
	       echo "<option value=\"".$reg2['codigo']."\">".$reg2['descripcion']."</option>";
      }		
      ?>  
      </select>      
      
      <input type="hidden" name="codigo" value="<?php echo $_REQUEST['codigo']; ?>">     
      <br> 
      <input type="submit" value="Confirmar">
    </form>
  <?php
    }      
    else
	  echo 'No existe un artículo con dicho código';
	
    mysqli_close($con);

  ?>  
</body>
</html>

El algoritmo de esta página ya lo analizamos cuando vimos la modificación de datos trabajando con más de una tabla de MySQL.

Cuando termina de modificar los datos en pantalla el usuario se llama la página modificacionarticulo2.php donde procedemos a efectuar el update de de tabla articulos y redireccionar a la pagina principal:

<?php
    $con=mysqli_connect("localhost","root","","base1") or 
      die("Problemas con la conexión a la base de datos");
	  
    mysqli_query($con,"update articulos set 
                           descripcion='$_REQUEST[descripcion]',
                           precio=$_REQUEST[precio],
                           codigorubro=$_REQUEST[codigorubro]
              where codigo=$_REQUEST[codigo]") or
      die(mysqli_error($con));
	 
    mysqli_close($con);

    header('Location:mantenimientoarticulos.php');
?>  

Por último desde la página principal de mantenimientoarticulos tenemos un hipervínculo para efectuar el alta de articulos, este hipervínculo llama a la página altaarticulo1.php:

<!doctype html>
<html>
<head>
  <title>Alta de artículo</title>
</head>  
<body>
  <form method="post" action="altaarticulo2.php">
  Ingrese descripcion del artículo:
  <input type="text" name="descripcion" required>
  <br>
  Ingrese precio:
  <input type="text" name="precio" required>
  <br>
  Seleccione rubro:
  <select name="codigorubro">
  <?php
    $con=mysqli_connect("localhost","root","","base1") or 
      die("Problemas con la conexión a la base de datos");
    $registros=mysqli_query($con,"select codigo,descripcion from rubros") or
      die(mysqli_error($con));
	while ($reg=mysqli_fetch_array($registros))
    {
	   echo "<option value=\"".$reg['codigo']."\">".$reg['descripcion']."</option>";
    }		
  ?>  
  </select>
  <br>
  <input type="submit" value="confirmar">
  </form>
</body>
</html>

Finalmente la página altaarticulo2.php efectua el insert y redirecciona a la página principal:

<?php
    $con=mysqli_connect("localhost","root","","base1") or 
	  die("Problemas con la conexión a la base de datos");
	  
    mysqli_query($con,"insert into articulos(descripcion,precio,codigorubro) 
        values ('$_REQUEST[descripcion]',$_REQUEST[precio],$_REQUEST[codigorubro])") or
      die(mysqli_error($con));
	  
    mysqli_close($con);

    header('Location:mantenimientoarticulos.php');    
?>  

El codigo fuente de todas estas páginas las puede descargar

de aquí.
— @INFOUDO.OFICIAL

— Síguenos en Facebook@INFOUDO.OFICIAL

Categorías: #PHP, #


[0] Atrás | Directorio
« Inicio
Apps Infoudo
Apps Infoudo ¡Descarga el icono directo en el menú de tu equipo!
[»] Las mejores Apps para tu celular
[»] Imágenes Gratis


Comenta o lee lo que otros opinan

COMPÁRTELO:

Indica que te gusta y comparte

Me Gusta :)Facebook Tuiteame :)Twitter .WhatsApp .Telegram . LinkedIn

También te puede interesar:

Mostrar el calendario de la fecha actual en php
Generar archivo RSS extrayendo los datos de una tabla MySQL con PHP
Generar clave aleatoria con PHP
Validación de un mail con JavaScript y luego con PHP
Captcha en PHP
mysqli - modificación de un registro de la tabla articulos
mysqli - borrado de un registro de la tabla articulos
mysqli - consulta tabla articulos
mysqli - listado tabla articulos (mysqli_query, mysqli_fetch
mysqli - alta tabla articulos (mysqli_query)


« mysqli - modificación de un registro de la tabla articulos  |  Tutorial Ajax »
 
Apps Infoudo
 
Buscador:
Powered by Google:


Web móvil
Imágenes
La Web

 

Síguenos por RSS


Puedes leerlos mediante el navegador Firefox, lectores de noticias en la computadora o el móvil o usando el servicio de Feedburner de Google para recibir las notificaciones por correo electrónico.
RSS - Suscribirse usando Feedburner de Google

email Recibir las nuevas publicaciones de Infoudo por email

Atom


»Ir a URL
.....
Registra Gratis Tu Negocio
....
Sugerir un nuevo sitio WAP

...
¡Bloguea Ya!

..
Registro de Profesionales(Abogados, escritores, doctores, licenciados, ingenieros, etc.)
.
Soporte

Síguenos en las redes sociales

Síguenos en Facebook facebook.com/INFOUDO.OFICIAL Síguenos en Twitter @infoudomon Síguenos en Instagram @infoudooficial Síguenos en Telegram t.me/Infoudooficial
Síguenos en Facebook facebook.com/tuinfou Síguenos en Twitter @infoudomonagas
Síguenos en WhatsApp INFO UDO Síguenos en YouTube youtube.com/channel/UCuicPxpqv3C0p1qwaO1XSSQ
Síguenos en Facebook facebook.com/SergioAlemanFans Síguenos en Twitter @SergioAleman1 Síguenos en Instagram @sergioalemanfans
Síguenos en WhatsApp wa.me/qr/Y7Q232VLZPR5O1 Síguenos en Tiktok @sergioalemanoficial Síguenos en Tiktok @sergioalemanfans
Síguenos en Telegram t.me/SergioAlemanOficial Síguenos en YouTube youtube.com/channel/UCqcLSYCKx9pamla68nFMDkw
Síguenos en Facebook facebook.com/boludooficial Síguenos en Twitter @bolUDOoficial Síguenos en Instagram @boludooficial Síguenos en Telegram t.me/Boludooficial
Síguenos en WhatsApp BolUDOoficial Síguenos en YouTube youtube.com/channel/UCJDooTJmROzAkBcbRrryvGA

Mis cuentas sociales

FB
Twitter
Pinterest
Instagram
Otras

Móvil: (0426 683 6955) - E-mail: [email protected] - [email protected] - WhatsApp: +58 (0426) 683.69.55


Copyscape
Volver arriba

Protocolo  |  Mapa del Sitio  |  Report Abuse - DMCA  |  Términos y Condiciones  |  Ayuda  |  Privacidad de Datos  |  Política de Cookies  |  Reportar un bug  |  Licencia: CC BY-NC-ND 3.0

Copyright ©2023 Infoudo. Todos los derechos reservados. Diseñado y Desarrollado por Sergio Alemán Mi perfil en GitHub


SUBIR