Para leer registros de una base de datos, la técnica suele ser recorrer y encontrar los que desee. Para especificar qué registros desea, use algo llamado SQL. Esto significa lenguaje de consulta estructurado. Este es un lenguaje natural, sin codificación, que usa palabras como SELECT y WHERE. En su nivel más simple, es bastante sencillo. Pero cuanto más compleja es la base de datos, más complicado es el SQL. Sin embargo, comenzaremos con algo simple.
Lo que queremos hacer, ahora que tenemos una conexión con nuestra base de datos, es leer todos los registros de nuestra libreta de direcciones e imprimirlos en la página. Aquí hay un código nuevo, agregado al script PHP que ya tiene. Las nuevas líneas están en azul:
PHP
requiere '../configure.php'
$ db_handle = mysqli_connect (DB_SERVER, DB_USER, DB_PASS);
$ base de datos = "libreta de direcciones";
$ db_found = mysqli_select_db ($ db_handle, $ base de datos);
if ($ db_found) {
$ SQL = "SELECT * FROM tbl_address_book";
$ resultado = mysqli_query ($ db_handle, $ SQL);
while ($ db_field = mysqli_fetch_assoc ($ resultado)) {
imprimir $ db_field['ID'] . "
";
imprimir $ db_field['First_Name'] . "
";
imprimir $ db_field['Surname'] . "
";
imprimir $ db_field['Address'] . "
";
}
}
demás {
imprimir "Base de datos NO encontrada";
}
mysqli_close ($ db_handle);
?>
Antes de revisar el nuevo código para ver qué está sucediendo, ejecute su script. Debería encontrar que la dirección que agregó en una sección anterior está impresa. (Solo tenemos un registro en este momento).
1
Prueba
Nombre
12 Test Street
La primera línea del nuevo código es esta:
$ SQL = "SELECT * FROM tbl_address_book";
$ SQL es solo una variable normal. Pero le estamos poniendo una cuerda larga. Esta es una declaración SQL. Aquí hay un breve resumen de SQL.
lenguaje de consulta estructurado
SQL (pronunciado SEEKwel), es una forma de consultar y manipular bases de datos. Los conceptos básicos son bastante fáciles de aprender. Si desea obtener todos los registros de una tabla en una base de datos, utilice el SELECCIONE palabra. Me gusta esto:
SELECT * FROM Table_Name
SQL no distingue entre mayúsculas y minúsculas, por lo que la línea anterior podría escribirse:
Seleccione * De Table_Name
Pero sus declaraciones SQL son más fáciles de leer si escribe las palabras clave en mayúsculas. Las palabras clave en las líneas de arriba son SELECCIONE y DESDE. El asterisco significa "Todos los registros". Nombre de la tabla
es el nombre de una tabla en su base de datos. Entonces toda la línea dice:
"SELECCIONAR todos los registros DE la tabla llamada Table_Name"
No tiene que seleccionar todos los registros de su base de datos. Puede seleccionar las columnas que necesita. Por ejemplo, si quisiéramos seleccionar solo las columnas de nombre y apellido de esta tabla, podemos especificar eso en nuestra Cadena SQL:
"SELECCIONAR Nombre, apellido de tbl_address_book"; Cuando se ejecuta esta sentencia SQL, solo el Primer nombre y Apellido
se devolverán las columnas de la base de datos.
Hay muchos más comandos SQL a los que acostumbrarse, y conocerá más a medida que avanza. Por ahora, solo estamos seleccionando todos los registros de nuestra tabla.
Volver al código
La primera línea de nuestro código, entonces, fue esta:
$ SQL = "SELECT * FROM tbl_address_book";
Entonces tenemos una declaración SQL, pero necesitamos pasarla a otra función incorporada:
mysqli_query () Elmysqli_query La función () se utiliza para enviar una consulta SQL a su base de datos. Si ha escrito correctamente su SQL, la función devolverá un valor. Este valor será verdadero, falso o un identificador de archivo. Porque estamos usando el SELECCIONE
palabra clave, el valor devuelto por será un identificador de archivo. En nuestro código, la línea era esta: $ resultado = mysqli_query ( $ SQL)
; El identificador de archivo devuelto en nuestro $ resultado
variable solo apunta a los resultados. En realidad, no devuelve nada. Para recuperar los datos, teníamos esto dentro de un ciclo while: $ campo_db = mysqli_fetch_assoc ( $ resultado)
;
La función incorporada que estamos usando para recuperar los resultados es la siguiente: mysqli_fetch_assoc ( $ resultado
) El assoc parte significa asociativo. Como en "matriz asociativa". Por lo tanto, pedimos que los resultados se devuelvan en un formato de matriz. Entre los corchetes redondos de mysqli_fetch_assoc
hemos escrito el nombre de nuestro identificador de archivo ?? el que apuntaba a los resultados de la declaración SQL.
Recuerde: una matriz asociativa es aquella en la que las claves son texto. Entonces es este formato:['One'] Formación
=['Two'] Formación
=['Three]Formación
'=
Y no esto:[1] Formación
=[2] Formación
=[3] Formación
= Cuando el mysql_fetch_assoc La función devuelve una matriz, lo estamos poniendo todo en una variable llamada$ db_field
. La parte clave de la matriz son todos los nombres de columna de nuestras tablas de base de datos. Esto se hace automáticamente por usted. Entonces el formato de la matriz será este:[Column_Name] $ db_field =
Valor
La razón por la que está haciendo esto es para que pueda recorrer la matriz y acceder a los valores de la tabla. Aquí está nuestro bucle, sin nada entre paréntesis:
tiempo ( ) {['ID'] imprimir $ db_field
. "
";['First_Name'] imprimir $ db_field
. "
";['Surname'] imprimir $ db_field
. "
";['Address'] imprimir $ db_field
. "
";
} Entonces estamos imprimiendo el valor que esté en la posición de la matriz['ID']$ db_field ,
['First_Name']$ db_field ,['Surname'] $ db_field
y['Address']$ db_field
. También estamos agregando un salto de línea HTML al final, solo para fines de impresión.
Si todo eso es confuso, recuerde el formato:[Table_Coulmn_Name] Array_Name =
Value_From_Record
Todo nuestro bucle while, entonces, es este:
while ($ db_field = mysqli_fetch_assoc ($ resultado)) {['ID'] imprimir $ db_field
. "
";['First_Name'] imprimir $ db_field
. "
";['Surname'] imprimir $ db_field
. "
";['Address'] imprimir $ db_field
. "
";
}
- Debido a que es un poco complejo, repasemos los pasos que hemos usado para acceder a los registros de nuestra tabla:
- Utilizar mysqli_query ()
- Utilizar mysqli_fetch_assoc ()
Configure una instrucción SQL que pueda usarse para obtener los registros de la tabla de la base de datos
para recuperar los registros que especificamos en el Paso 1
para configurar una matriz. La matriz contendrá todos los registros que se devolvieron en el Paso 2
Realice un bucle con todos los datos de la matriz utilizando un bucle While
El paso 1 fue este, en el código:
$ SQL = "SELECT * FROM tbl_address_book";
El paso 2 fue este:
$ resultado = mysqli_query ($ SQL);
El paso 3 fue este:
$ db_field = mysqli_fetch_assoc ($ resultado)
Y el paso 4 fue este:
while ($ db_field = mysqli_fetch_assoc ($ resultado)) {['ID'] imprimir $ db_field
. "
";['First_Name'] imprimir $ db_field
. "
";['Surname'] imprimir $ db_field
. "
";['Address'] imprimir $ db_field
. "
";
}
Si todavía está confundido, estudie el código y repase esta sección. En la siguiente sección, adaptaremos el código para agregar más registros a nuestra tabla de base de datos.
<- Atrás una página | Pasar a la siguiente parte ->
Volver a la página de contenido de PHP
Recomendado para ti
- Este teclado profesional de 35 teclas con una sola mano con control avanzado programable te hace sentir más cómodo y crea tu propio teclado especial
- Mini portátil de 35 teclas, diseño mini que ofrece una experiencia de funcionamiento con una sola mano extremadamente simple
- Adecuado para tus manos y muñeca, simplifica el complejo procedimiento operativo, vence al rival más rápido en los juegos
- Teclado compatible con MAC, Win 2000, Win XP, Win ME, Vista, Win7, Win8, Android, Linux y más
- Brillante: retroiluminación LED, más fresco por la noche
- Bajo la tapa de esta llamativa caja RGB está el procesador AMD Ryzen 5 5500 tiene una frecuencia de reloj de alto rendimiento de 3,6 GHz y en combinación con la NVIDIA RTX 3060 con 12 GB de VRAM, DLSS y trazado de rayos, ofrece una experiencia gráfica de ensueño que hará que tu corazón se acelere.
- Gracias a los 16 GB de RAM a 3200 MHz y a la unidad SSD M.2 de 500GB, disfrutarás de los tiempos de carga más cortos y estarás siempre un paso por delante de tus rivales. Para una máxima comodidad, hemos preinstalado Windows 10 Pro en tu PCVIP y también hemos instalado una tarjeta WiFi. Sólo tienes que enchufar el PC, encenderlo y la diversión puede empezar de inmediato.
- Vas a convertirte en el mejor jugador en un tiempo récord gracias a la mejor configuración de ordenador gaming. No hay límites con nuestro innovador PC Gaming. Mejora tu experiencia de juego con el impresionante rendimiento del hardware de los PC Gaming de Ibericavip
- Rendimiento de primera clase gracias a la NVIDIA RTX 3060 con 12 GB de VRAM y ray tracing. Además, incluimos un monitor LED Full HD de 27 pulgadas, un teclado gaming RGB y un ratón gaming RGB con la mejor alfombrilla XXL
- Pantalla: Monitor Gaming Curvo 27" 165 Hz Full HD G-Sync Free Sync Compatible
- Romer-G Táctil: Los interruptores mecánicos Romer-G exclusivos convierten a Orion Spectrum en el teclado rápido de nuestra historia, una actuación de 1,5 mm permite la entrada de datos en Orion
- Velocidad y Rendimiento: El teclado con cable USB Logtiech Orion Spectrum ofrece una gran velocidad, con un 40 por ciento de durabilidad para un rendimiento optimo usado con un ratón Logitech
- RGB LIGHTSYNC: La iluminación RGB de Orion Spectrum se puede personalizar con una paleta de 16 millones de colores, la parte superior de cada tecla está iluminada para un resplandor uniforme
- Segunda Pentalla Arx: Mediante la base ajustable se pueden conectar Smartphones y tablets a Orion Spectrum, con Arx Control, los dispositivos móviles pueden mostrar información del juego en curso
- Teclas G Programables: El teclado Orion Spectrum dispone de 9 teclas G totalmente personalizables, a las que se pueden asignar comandos por perfil, colocadas para optimizar el acceso