Advertisement
AMERISA123

Untitled

May 27th, 2022
15
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.44 KB | None | 0 0
  1. <?php
  2. $caracteres = "1234567890";
  3. $desordenada = str_shuffle($caracteres);
  4. $CH = substr($desordenada, 1, 4);
  5. ?>
  6.  
  7. <?php
  8. include ("conexion.php");
  9. $productos = "SELECT codigo,descripcion, precioventa,existencia, imagen FROM productos";
  10. $resultado = mysqli_query($conexion, $productos);
  11. $filas = '';
  12. while ($row = mysqli_fetch_array($resultado)) {
  13. $filas .= '
  14. <tr>
  15. <td><input type="hidden" name="codigo[]" value="'.$row["codigo"].'">'.$row["codigo"].'</td>
  16.  
  17. <td><input name="descripcion[]" value="'.$row["descripcion"].'" readonly="readonly"></td>
  18.  
  19. <td><img width="100px" src="imagenes/'.$row['imagen'].'"></td>
  20.  
  21. <td><input name="existencia[]" value="'.$row["existencia"].'" readonly="readonly"></td>
  22.  
  23. <td><input name="precioventa[]" class="clasePrecio form-control" value="'.$row["precioventa"].'" readonly="readonly"></td>
  24. <td><input name="cantidad[]" class="claseCantidad form-control" type="number" min="0" max="'.$row["existencia"].'" size="1" value="0">
  25. <input type="button" class="btn_agregar btn btn-primary form-control" value="Agregar">
  26. </td>
  27. <td>
  28. <div class="input-group mb-3">
  29. <span class="input-group-text border-0 bg-white">$</span>
  30. <input name="subtotal[]" type="text" class="claseResultado border-0 form-control" placeholder="" value="0">
  31. </div>
  32. </td>
  33. </tr>
  34. ';
  35. }
  36. mysqli_free_result($resultado);
  37. ?>
  38.  
  39. <html>
  40.  
  41. <head>
  42. <title>Formulario</title>
  43. <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
  44. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  45.  
  46. <script type="text/javascript">
  47. function validarRegistro(){
  48. //nombre
  49. if (document.form.nombre.value==""||
  50. document.form.nombre.value==" " ||
  51. document.form.nombre.value== null ) {
  52. alert("El campo nombre esta vacio");
  53. return false;
  54. }
  55. //direccion
  56. if (document.form.direccion.value==" "||
  57. document.form.direccion.value=="") {
  58. alert("El campo direccion esta vacio")
  59. return false;
  60. }
  61.  
  62. //email
  63. if (document.form.email.value==" "||
  64. document.form.email.value=="") {
  65. alert("El campo e-mail esta vacio")
  66. return false;
  67. }
  68. if (document.form.email.value.search(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) {
  69. alert("El campo e-mail no es valido")
  70. return false;
  71. }
  72. //telefono
  73. if (document.form.telefono.value==" "||
  74. document.form.telefono.value=="") {
  75. alert("El campo telefono esta vacio")
  76. return false;
  77. }
  78. document.form.submit();
  79. }
  80. </script>
  81.  
  82. </head>
  83.  
  84. <body>
  85. <div class="container">
  86.  
  87. <form method="post" id="myForm" action="procesarordenbd.php">
  88.  
  89. <div class="datosCliente d-none" >
  90. <img style="width: 327px; height: 227px;" alt="" src="JOSTORE.jpeg">&nbsp;
  91. <caption>Datos para la entrega</caption>
  92. <p>N° de Orden &nbsp; <input type="text" name= "n_orden" id="n_orden" size="1" readonly="readonly" > </p>
  93. <br>
  94. <p >
  95. Nombres: <input name="nombre" required=""></p>
  96. <p>
  97. Correo:
  98. <input name="email" required="" type="email"></p>
  99. <p>
  100. Dirección: <input name="direccion" required=""></p>
  101. <br>
  102. <p>
  103. Telefono: <input name="telefono" required="">
  104. </p>
  105. <input name="Submit2" value="Limpiar" type="reset">
  106. </div>
  107. <table id="pedido" class="table table-bordered mt-2">
  108. <caption class="caption-top">Productos a la Venta</caption>
  109. <thead>
  110. <tr>
  111. <th>Código</th>
  112. <th>Descripción</th>
  113. <th>Imagen</th>
  114. <th>Existencia</th>
  115. <th>Precio Unitario</th>
  116. <th>Ingrese Cantidad</th>
  117. <th>Subtotal</th>
  118. </tr>
  119. </thead>
  120. <tbody>
  121. <?= $filas; ?>
  122. </tbody>
  123.  
  124. <tfoot>
  125. <td colspan="5"></td>
  126. <td>Total </td>
  127. <td>
  128. <div class="input-group mb-3">
  129. <span class="input-group-text border-0 bg-white">$</span>
  130. <input type="text" class="claseTotal border-0 form-control bg-white" disabled value="0">
  131. </div>
  132. </td>
  133. </tfoot>
  134.  
  135. </table>
  136.  
  137.  
  138. <button type="sumbit" class="mostrarOrden btn_agregar btn btn-primary form-control">Generar Orden de Compra</button>
  139. </form>
  140.  
  141. <br>
  142. <br>
  143. </div>
  144.  
  145. <script>
  146. $(document).ready(function() {
  147. $('.btn_agregar').on('click', function() {
  148. let precio = $(this).closest('tr').find('.clasePrecio').val();
  149. let cantidad = $(this).closest('tr').find('.claseCantidad').val();
  150. $(this).closest('tr').find('.claseResultado').html("$" + (parseFloat(precio) * parseFloat(cantidad)))
  151. $(this).closest('tr').find('.claseResultado').val((parseFloat(precio) * parseFloat(cantidad)))
  152. sumarsubtotales()
  153. });
  154.  
  155. function sumarsubtotales() {
  156. let total = 0
  157. $('.claseResultado').each(function() {
  158. total += parseInt($(this).val())
  159. })
  160. $('.claseTotal').val(total)
  161. }
  162. $('.mostrarOrden').on('click', function() {
  163.  
  164. $('#pedido tr').each(function() {
  165. let cantidad = $(this).find('.claseCantidad').val()
  166. if (cantidad == 0) {
  167. $(this).addClass('d-none')
  168. }
  169. })
  170.  
  171. let CH = Math.floor(Math.random() * 9999) + 1;
  172. $('#captiontable').html("Detalles de la orden número: " + CH)
  173. $('#myForm').append('<input type="hidden" name="numeroOrden" value="' + CH + '">')
  174. $('.datosCliente').removeClass('d-none')
  175.  
  176. })
  177.  
  178. });
  179. </script>
  180. <script>
  181. let n_orden = "<?php echo $CH ?>";
  182. window.addEventListener('load', () => {
  183. document.getElementById('n_orden').value = n_orden;
  184. });
  185. </script>
  186.  
  187. </body>
  188.  
  189. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement