Outubro
17
2006

Como: Configurar MySQL rexistros como matriz a ser analizada por Smarty

Aquí está un exemplo de como configurar as súas consultas de MySQL para que poidan ser facilmente transmitida cara a dentro e analizado polo Smarty.

O conxunto de resultados será un array multidimensional. A primeira dimensión da matriz é numérica e representa cada liña do seu conxunto de resultados. A segunda dimensión da matriz é unha matriz asociativo onde os nomes dos índices son os nomes dos campos que especificou na súa consulta.

Código:
/ / Iníciase o array para almacenar os resultados
$ Resultados = array ();

/ / Tenta conectar co DB
$ Mysql = mysql_connect ($ host, $ user, $ contrasinal) ou die ('Non se puido conectar:'. Mysql_error ());

/ / Configura a instrución SQL
$ SQL = "Select nome SQL_CALC_FOUND_ROWS, enderezo, cidade, provincia, código postal DESDE dos usuarios;

/ / Executa a consulta
$ Result = mysql_query ($ SQL, $ mysql);

/ / Pega os resultados como unha matriz asociativa e que cada liña en unha matriz indexada numericamente
while ($ liña = mysql_fetch_assoc ($ myresult))
$ Resultados [] = $ row;

/ / Agora imos conseguir configurar a consulta para obter o número de resultados que foron devoltos
$ SQL = 'SELECT FOUND_ROWS () como foundrows';

/ / Executa a consulta
$ Result = mysql_query ($ SQL, $ mysql);

/ / Garda a liña resultante
$ Row = mysql_fetch_assoc ($ result);

/ / Pega o total de liñas
$ Liña = $ total ['foundrows'];

/ / Asignar os resultados para Smarty
$ Smarty-> assign ('resultados', $ resultados);
$ Smarty-> assign ('total', $ totais)

/ / Amosa o modelo Smarty
$ Smarty-> Mostrar ('index.tpl');

O conxunto de resultados debe ser algo así:

Código:
Matriz (2)
0 => array (5)
name => John Doe
address => 123 Way Anonymous
cidade => Springfield
Estado => IL
zip => 62707
1 => array (5)
nome => Jane Doe
address => Camiño de luxo 777
cidade => Beverly Hills
estado => CA
zip => 90210

E aquí está un exemplo usando {section} para analizar os resultados

Código:
Amosando {$ total} rexistros <br />
{Nome da sección = nr loop = R $ resultados}
{$ Resultados [n] nome.}
{$ Resultados [n] enderezo.}
{$ Resultados [n] da cidade.}
{$ Resultados [n] do estado.}
{$ Resultados [n] zip.} <br />
{} Sectionelse
<h1> Non se atoparon resultados! </ h1>
{/ Section}

tags: , ,
publicou en Guide , programación por Owen

Estes son os comentarios a través do RSS Feed | Deixe un comentario | Trackback URL

Deixe o seu comentario

 
© 2008 - 2012 - Todos os dereitos reservados - Ideamesh, Inc 22 procedementos. 0.238 segundos.