Describir la tabla de la base de datos con Mysqli_query en PHP

Habdul Hazeez 15 febrero 2024
  1. Configurar la base de datos de prueba
  2. Describa la tabla con mysqli_query en PHP
Describir la tabla de la base de datos con Mysqli_query en PHP

Este artículo le enseñará cómo usar mysqli_query para describir una tabla de base de datos. La descripción la haremos con el comando DESCRIBE en SQL.

Al mismo tiempo, imprimiremos el resultado y se parecerá a lo que verá en la consola de MySQL.

Configurar la base de datos de prueba

La base de datos de prueba que configuraremos contendrá una sola tabla. Entonces, si tiene una base de datos MySQL que puede usar, omita esta sección.

Para comenzar con la base de datos, descargue e instale XAMPP de Apache Friends. Una vez que instale XAMPP, tendrá acceso a MySQL a través de una consola o phpMyAdmin.

Mientras tanto, para este artículo, accederemos a MySQL desde la consola. Entonces, haga lo siguiente para acceder a la consola MySQL en XAMPP.

  • Inicie el panel de control de XAMPP.
  • Haga clic en Shell en el lado derecho de la ventana de diálogo. Esto iniciará la consola.
  • Escriba mysql -u root -p y presione la tecla Enter en su teclado.

Este comando asume el usuario y la contraseña predeterminados de la base de datos. El usuario predeterminado es root y la contraseña está vacía.

Una vez que haya iniciado sesión en MySQL, cree una base de datos con la siguiente consulta.

CREATE database user_details;

Cambie a la nueva base de datos usando lo siguiente.

USE user_details;

Ahora, cree una tabla en la base de datos usando la siguiente consulta.

CREATE TABLE bio_data (
id INT NOT NULL AUTO_INCREMENT,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
PRIMARY KEY (id)) ENGINE = InnoDB;

Describa la tabla con mysqli_query en PHP

Para describir la tabla usando mysqli_query, escribiremos código PHP que hará lo siguiente.

  1. Conéctese a la base de datos.
  2. Use el comando DESCRIBE en la tabla bio_data usando la versión OOP de mysqli_query.
  3. Obtén el resultado usando fetch_all.
  4. Consigue las llaves de la primera fila. La primera fila será el encabezado de la tabla.
  5. Imprima los encabezados de las tablas.
  6. Imprima las filas de la tabla.
    6.1. Pruebe los valores NULL utilizando is_null.
    6.2. Muestra el texto "NULL" para valores NULL.

El siguiente es el código PHP para los pasos anteriores.

<head>
	<meta charset="utf-8">
	<title>Describe Table with mysqli_query</title>
	<style>
		body { display: grid; justify-content: center; align-items: center; height: 100vh; }
		table { border-collapse: collapse; width: 20em; }
		table,th, td { border: 1px dashed #1a1a1a; }
		td,th { padding: 0.5em; }
	</style>
</head>
<body>
	<main>
		<?php
		// The username is root
		// and the password is empty.
		$connection_string = new mysqli("localhost", "root", "", "user_details");
		// getting all the rows from the query
		$table_bio_data = $connection_string->query("DESC bio_data")->fetch_all(MYSQLI_ASSOC);
		// getting keys from the first row
		$header = array_keys(reset($table_bio_data));

		// Print the table
		echo "<table>";
		// Print the table headers
		echo "<tr>";
		foreach ($header as $value) {
		    echo "<th align='left'>$value</th>";
		}
		 echo "</tr>";
		// Print the table rows
		foreach ($table_bio_data as $row) {
			echo "<tr>";
		    foreach ($row as $value) {
		    	if (is_null($value)) {
		    		echo "<td>NULL</td>";
		    	} else {
		        	echo "<td>$value</td>";
		        }
		    }
		    echo "</tr>";
		}
		echo "</table>";
		?>
	</main>
</body>

Producción:

Descripción de una tabla MySQL en Firefox 100

Habdul Hazeez avatar Habdul Hazeez avatar

Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.

LinkedIn

Artículo relacionado - PHP MySQL