sábado, 15 de julio de 2017

Msqli - POO - Consultar tabla






Introducción a la extensión MySQL mejorada (Mysqli)

La extensión mysqli
(mysql improved) permite acceder a la funcionalidad proporcionada por MySQL 4.1 y posterior.

La extensión mysqli ofrece una interfaz dual. Soporta el paradigma de programación procedimental y el orientado a objetos (poo).  En esta sección vamos a utilizar la poo

Pasos a seguir:

1) Creción de la base de datos 
db_test y la tabla tbproveedor  en mysql

2) Creamos el archivo php de consulta

  1. conexión a la base de datos con el comando new mysqli()
  2. chequear la conexión
  3. preparar la consulta ( select )
  4. recorrer los registros y mostrar en pantalla
Iniciamos la tarea:

Creamos la tabla (tbproveedor) en Mysql

Estas son las instrucciones que se debe ejecutar en Mysql. Creamos la tabla tbproveedor  con el comando CREATE TABLE e ingresamos tres registros  en la tabla con el comando INSERT.

CREATE DATABASE db_test;

USE db_test;

CREATE TABLE tbproveedor
(  id INT NOT NULL AUTO_INCREMENT , 
   proveedor  VARCHAR(40) NOT NULL , 
   direccion  VARCHAR(50) NOT NULL ,
   telefono   VARCHAR(20) NULL , 
   PRIMARY KEY (id)) ENGINE = InnoDB;

/* insertamos algunos datos de prueba */
INSERT INTO tbproveedor values
   ('', 'Paseo San Vicente', 'Charles de Gaulle 221', '607-273'),
   ('', 'Shoes 4 less', 'Shopping Multiplaza', '514-045'),
   ('', 'Proveedor 03', 'Direccion prueba 03', '456-789');



Solo resta creamos el archivo php, que realiza la consulta a la base de datos Mysql, y prepara la vista de los proveedores.
Tenga en cuenta que dejamos de usar extension MySQL (original)  por la nueva mysqli orientado a objeto.

MySQL(original): Esta extensión está obsoleta a partir de PHP 5.5.0, por lo que ha sido eliminada a partir de PHP 7.0.0.

Archivo de consulta en php ( ConsultarProveedor.php )

<?php

  $servername = "localhost";
  $username   = "root";
  $password   = "MiPassword";
  $dbname     = "db_test";

// crear conexion con new mysqli
  $conn = new mysqli($servername, $username, $password, $dbname);

// Chequear la conexion
  if ($conn->connect_error) {
      die("Connection failed: " . $conn->connect_error);
  } 

  $sql = "SELECT id, proveedor, direccion, telefono FROM tbproveedor";
  $result = $conn->query($sql);

  if ($result->num_rows > 0) {
     // preparamos nuestra tabla
     echo "<table border=2>";
     echo "<tr>";
     echo "<th>id</td> <th>proveedor</td> <th>direccion</td> <th>telefono</td>";
     echo "</tr>";

     // recorrer los registros del select cargando la consulta en un array asociativo
     while( $row = $result->fetch_assoc() ) {
  
        // echo "id: " . $row["id"]. " - proveedor: " . $row["proveedor"]. " Direccion: " . $row["direccion"].
        //      " Telef: " . $row["telefono"] . " </br>" ;
        echo "<tr>";
        echo "<td>" .  $row["id"] . "</td>";
        echo "<td>" .  $row["proveedor"] . "</td>";
        echo "<td>" .  $row["direccion"] . "</td>";
        echo "<td>" .  $row["telefono"] . "</td>";
        echo "</tr>" ;  
     }
     echo "</table>";
  } else {
    echo "0 results";
}
$conn->close();

?>


Con el navegador, ejecutamos el programa php creado. El resultado es esta impresión de pantalla. 
Tenga en cuenta que debe estar en ejecución el Servidor Web, en mi caso el apache, y el Mysql (en mi caso tengo instalado el XAMPP).





Material de consulta:


-       

1 comentario:

python - método split()

  Cómo dividir cadena en subcadenas con  el method split()? En este ejemplo, le asigno a la variable varTP el bloque de información con el q...