Octubre
17
2006

Cómo: Configurar MySQL como un array de registros que serán analizados por Smarty

Aquí está un ejemplo de cómo configurar las consultas de MySQL por lo que fácilmente se puede pasar en y se analiza en Smarty.

El conjunto de resultados será una matriz multidimensional. La primera dimensión de la matriz es de tipo numérico y representa cada fila del conjunto de resultados. La segunda dimensión de la matriz es un arreglo asociativo donde los nombres de los índices son los nombres de los campos especificados en la consulta.

Código:
/ / Inicializa la matriz que contenga los resultados
$ Resultados = Array ();

/ / Intenta conectarse a la base de datos
$ Mysql = mysql_connect ($ host, $ user, $ password) or die ('No pudo conectarse:'. Mysql_error ());

/ / Configuración de la sentencia de SQL
$ Sql ​​= "SELECT SQL_CALC_FOUND_ROWS nombre, dirección, ciudad, estado, código postal FROM usuarios ';

/ / Ejecutar la consulta
$ Result = mysql_query ($ sql, $ mysql);

/ / Obtener los resultados como una matriz asociativa y poner cada fila en la matriz indexado numéricamente
while ($ fila = mysql_fetch_assoc ($ MiResultado))
$ Resultados [] = $ fila;

/ / Ahora que ponerse en marcha la consulta para obtener el número de resultados que fueron devueltos
$ Sql ​​= "SELECT FOUND_ROWS () como foundrows ';

/ / Ejecutar la consulta
$ Result = mysql_query ($ sql, $ mysql);

/ / Almacenar la fila resultante
$ Fila = mysql_fetch_assoc ($ resultado);

/ / Obtener el total de filas
$ Total = $ fila ['foundrows'];

/ / Asignar los resultados de smarty
$ Smarty-> assign ('resultados', $ resultados);
$ Smarty-> assign ("total", $ total);

/ / Mostrar el template de Smarty
$ Smarty-> display ('index.tpl');

El conjunto de resultados debe ser algo como esto:

Código:
Array (2)
0 => array (5)
nombre => John Doe
address => 123 de forma anónima
ciudad => Springfield
Estado => IL
zip => 62707
1 => array (5)
nombre => Jane Doe
address => 777 Camino de Lujo
ciudad => Beverly Hills
Estado => CA
zip => 90210

Y aquí hay un ejemplo usando {section} para analizar los resultados

Código:
Viendo {total} $ registros: <br />
{Nombre de la sección n = loop = $ resultados}
{$ Resultados [n]. Nombre}
{$ Resultados [n]. Dirección}
{$ Resultados [n]. De la ciudad}
{$ Resultados [n]. Estado}
{$ Resultados [n]. Zip} <br />
{} Sectionelse
<h1> No se encontraron resultados! </ h1>
{/ Section}

tags: , ,
publicado en la Guía , Programación por Owen

Siga los comentarios a través del feed RSS | Agregar un comentario | Trackback URL

Deja tu comentario

 
© 2008 - 2012 - Todos los derechos reservados - Ideamesh, Inc. 22 consultas. 0,486 segundos.