miércoles, 10 de julio de 2024

Listar Productos con Imagen con PHP y MySql + Codigo Fuente

Las imagenes estan en la carpeta productos dentro de htdocs, en la tabla productos hay una columna que guarda el nombre de la imagen.

<?php

$servername = "localhost";

$username = "minuvahard10";

$password = "unodostres";

$dbname = "ventas";

echo '<head><link rel="stylesheet" type="text/css" href="style.css" /></head>';

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {

  die("Connection failed: " . $conn->connect_error);

}

$sql = "SELECT * FROM productos";

$result = $conn->query($sql);

if ($result->num_rows > 0) {

  echo "<table>";

  echo "<tr><th>Barcode</th><th>Nombre</th><th>Precio</th></tr>";

  while($row = $result->fetch_assoc()) {

    $var = $row["barcode"];

    $cad = "<tr><td>". $row["barcode"]."</td><td>". $row["nombre"]."</td><td>". $row["precio"]."</td><td><img src='productos/". $row["imagen"]."'></td>";

    echo $cad; ?>

    <td><a href='detalle.php?codi=<?php echo $var; ?>'><p onmouseover=''>Detalle</p></a></td></tr>

    <?php

  }

  echo "</table>";

} else {

  echo "0 results";

}

$conn->close();

?> 





Se Desarrolla Proyectos Software con PHP y MySql - Miguel Nunez - minuvasoft10@gmail.com




domingo, 7 de julio de 2024

Mini Software de Recibo con Java Netbeans Mysql + Codigo de Barras + Impresion + Codigo Fuente

 


Clase de Formulario frmBuscarBC.java
package pktForm12;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import static java.awt.print.Printable.NO_SUCH_PAGE;
import static java.awt.print.Printable.PAGE_EXISTS;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.util.HashSet;
import java.util.Set;
import javax.swing.JOptionPane;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
public class frmBuscarBC extends javax.swing.JFrame {
    coneBD cn=new coneBD();
    DefaultTableModel modelo=new DefaultTableModel();
    public frmBuscarBC() {
        initComponents();
        String titu[]={"IDProducto","Nombre","Precio"};
        modelo.setColumnIdentifiers(titu);
        tblPro.setModel(modelo);
        tblPro.getColumnModel().getColumn(1).setPreferredWidth(200);
        DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer();
        cellRenderer.setHorizontalAlignment(SwingConstants.RIGHT);
        tblPro.getColumnModel().getColumn(2).setCellRenderer(cellRenderer);
        
    }
 private void txtBuscarActionPerformed(java.awt.event.ActionEvent evt) {                                          
        String SQL="select * from productos where barcode like '"+txtBuscar.getText()+"%';";
        String datos[]=new String[3];
        int op=0;
        try{
            cn.Conectar();
            cn.st=cn.conec.createStatement();
            cn.rt=cn.st.executeQuery(SQL);
            while (cn.rt.next()){
                datos[0]=cn.rt.getString(1);
                datos[1]=cn.rt.getString(2);
                datos[2]=cn.rt.getString(3);
                modelo.addRow(datos);
                op=1;
            }
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.toString());
        }
        if (op==0) {
            JOptionPane.showMessageDialog(null, "No tenemos el producto "+txtBuscar.getText());
        } else {
            calTot();
        }
        txtBuscar.setText(null);
    }                                         
    private void btnPrintActionPerformed(java.awt.event.ActionEvent evt) {                                         
        PrinterJob job = PrinterJob.getPrinterJob();
        job.setPrintable(new Printable() {    
        public int print(Graphics pg, PageFormat pf, int pageNum){
        if (pageNum > 0){
        return Printable.NO_SUCH_PAGE;
        }
        Font fuente = new Font("courier",Font.PLAIN,10);
        Graphics2D g2 = (Graphics2D) pg;
        g2.setFont(fuente);
        g2.drawString("minuvaMarket", 100, 100);
        int n = modelo.getRowCount(); int i=0;
        for(i=0;i<n;i++) {
            g2.drawString(""+modelo.getValueAt(i, 0).toString(), 100, i*20+125);
            g2.drawString(""+modelo.getValueAt(i, 1).toString(), 200, i*20+125);
            g2.drawString(""+modelo.getValueAt(i, 2).toString(),350, i*20+125);
        }
        jPanel1.paint(g2);
        return Printable.PAGE_EXISTS;
        }
        });
        try {
            job.print();
        } catch(PrinterException e) {
            e.printStackTrace();
        }
    }                                        
    private void calTot() {
        int n = modelo.getRowCount();
        int i; double S=0; double tax=0; double tot=0;
        for(i=0;i<n;i++) {
            S = S + Double.parseDouble(modelo.getValueAt(i, 2).toString());
        }
        S = redo(S);
        lblSub.setText(S+"");
        tax = 0.1*S;
        tax = redo(tax);
        lblTax.setText(tax+"");
        tot = S+tax;
        tot = redo(tot);
        lblTot.setText(tot+"");
    }
    private double redo(double num){
        return Math.rint(num*100)/100;
    }

Clase de Conexion coneBD.java
package pktForm12;
import java.sql.*;
import javax.swing.JOptionPane;
public class coneBD {
    public static PreparedStatement prest=null;
    public static CallableStatement cllst=null;
    public static Connection conec=null;
    public static Statement st=null;
    public static ResultSet rt=null;
    public static String usu;
    public static String contra;
    public static String host;
    public static String db;
    public void Conectar(){
        try{
            usu="root"; contra=""; host="localhost"; db="ventas";
            String url="jdbc:mysql://"+host+"/"+db;
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            conec=DriverManager.getConnection(url,usu,contra);
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.toString());
        }
    }
}
Tener Agregado en Libraries el conector mysql

Para Un Software Optimo comunicarse a minuvasoft10@gmail.com - Miguel Nunez





lunes, 1 de julio de 2024

Buscador con Imagen y PHP Mysql Select Like % + variable

tabla productos
buscar2.php
<html>

<body>

<form action="buscar2.php" method="post">

<input name='nom' id='nom' type="text" value="banana">
<input type="submit" >
</form>
<?php
if (isset($_POST['nom'])) {
   $keyw = $_POST['nom'];
   $dbhost = 'localhost';
   $dbuser = 'minuvahard10';
   $dbpass = 'unodostres';
   $dbname = 'ventas';
   $mysqli = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
   if($mysqli->connect_errno ) {
      printf("Connect failed: %s<br />", $mysqli->connect_error);
      exit();
   }
   
   $result = $mysqli->query("SELECT * FROM productos where nombre like '$keyw%'");
   if ($result->num_rows > 0) {
      echo "<table>";
      while($row = $result->fetch_assoc()) {
         $r2 = $row['imagen'];
         echo "<tr>";
         echo "<td><img src='productos/$r2' style='width: 300px;'></td><td>".$row['barcode']." ".$row['nombre']." ".$row['precio']."</td>";    
         echo "</tr>";          
      }
      echo "</table>";
   } else {
      printf('No record found.<br />');
   }
   mysqli_free_result($result);
   $mysqli->close();
}
?>
</body>
</html>
Se Desarrolla Proyectos Software - Miguel Nunez - minuvasoft10@gmail.com



Conectar a MySql con Java Netbeans mediante un Formulario

 Tener agregado en libraries el conector mysql. clase coneBD.java package pktForm12; import java.sql.*; import javax.swing.JOptionPane; publ...