Outubro
17
2006

Como: Configurar MySQL registros como matriz a ser analisada por Smarty

Aqui está um exemplo de como configurar as suas consultas de MySQL para que eles possam ser facilmente transmitida para dentro e analisado pelo Smarty.

O conjunto de resultados será um array multidimensional. A primeira dimensão da matriz é numérica e representa cada linha de seu conjunto de resultados. A segunda dimensão da matriz é um array associativo onde os nomes dos índices são os nomes dos campos que você especificou em sua consulta.

Código:
/ / Inicia o array para armazenar os resultados
$ Resultados = Array ();

/ / Tenta conectar ao DB
$ Mysql = mysql_connect ($ host, $ user, $ password) or die ('Não foi possível conectar:'. Mysql_error ());

/ / Configura a instrução SQL
$ Sql ​​= "SELECT nome SQL_CALC_FOUND_ROWS, endereço, cidade, estado, CEP DESDE dos usuários;

/ / Execute a consulta
$ Result = mysql_query ($ sql, $ mysql);

/ / Pega os resultados como uma matriz associativa e colocar cada linha em uma matriz indexada numericamente
while ($ linha = mysql_fetch_assoc ($ myresult))
$ Resultados [] = $ row;

/ / Agora vamos conseguir configurar a consulta para obter o número de resultados que foram devolvidos
$ Sql ​​= 'SELECT FOUND_ROWS () como foundrows';

/ / Execute a consulta
$ Result = mysql_query ($ sql, $ mysql);

/ / Armazena a linha resultante
$ Row = mysql_fetch_assoc ($ result);

/ / Pega o total de linhas
$ Linha = $ total ['foundrows'];

/ / Atribuir os resultados para smarty
$ Smarty-> assign ('resultados', $ resultados);
$ Smarty-> assign ('total', $ total);

/ / Mostra o modelo Smarty
$ Smarty-> display ('index.tpl');

O conjunto de resultados deve ser algo como isto:

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 => Caminho de Luxo 777
cidade => Beverly Hills
estado => CA
zip => 90210

E aqui está um exemplo usando {section} para analisar os resultados

Código:
Exibindo {$ total} registros: <br />
{Nome da seção = nr loop = R $ resultados}
{$ Resultados [n] nome.}
{$ Resultados [n] endereço.}
{$ Resultados [n] da cidade.}
{$ Resultados [n] do estado.}
{$ Resultados [n] zip.} <br />
{} Sectionelse
<h1> Não foram encontrados resultados! </ h1>
{/ Section}

tags: , ,
postou em Guides , programação por Owen

Siga os comentários através do RSS Feed | Deixe um comentário | Trackback URL

Deixe seu comentário

 
© 2008 - 2012 - Todos os Direitos Reservados - Ideamesh, Inc. 22 procedimentos. 0,212 segundo.