Oktober
17
2006

Hvordan: Sette opp MySQL recordset som matrise skal analyseres av Smarty

Her er et eksempel på hvordan du setter opp dine MySQL spørringer slik at de enkelt kan sendes inn og analyseres av Smarty.

Resultatet settet vil være en flerdimensjonal array. Den første dimensjonen i matrisen er numerisk og representerer hver rad av resultatet sett. Den andre dimensjonen i matrisen er en assosiativ matrise der navnene til de indeksene er feltnavnene du har angitt i søket.

Kode:
/ / Init array til å holde resultatene
$ Resultat = Array ();

/ / Prøv å koble til DB
$ Mysql = mysql_connect ($ host, $ bruker, $ passord) eller dø ('Kunne ikke koble:'. Mysql_error ());

/ / Setup SQL-setningen
$ Sql ​​= 'SELECT SQL_CALC_FOUND_ROWS navn, adresse, poststed, stat, zip fra brukere';

/ / Kjør spørringen
$ Resultat = mysql_query ($ sql, $ mysql);

/ / Få de resultatene som en assosiativ array og sette hver rad i numerisk indeksert matrisen
while ($ row = mysql_fetch_assoc ($ myresult))
$ Resultater [] = $ rad;

/ / Nå kan vi få satt opp spørringen for å få antallet resultater som ble returnert
$ Sql ​​= 'SELECT FOUND_ROWS () som foundrows';

/ / Kjør spørringen
$ Resultat = mysql_query ($ sql, $ mysql);

/ / Lagre resulterende rad
$ Row = mysql_fetch_assoc ($ resultat);

/ / Få de totale radene
$ Total = $ row ['foundrows'];

/ / Tilordne resultatene til Smarty
$ Smarty-> tildele (resultater ', $ resultater);
$ Smarty-> tildele ("totalt", $ totalt);

/ / Vise Smarty malen
$ Smarty-> display ('index.tpl');

Din resultset bør se omtrent slik ut:

Kode:
Array (2)
0 => Array (5)
name => John Doe
adresse => 123 Anonym Way
Byen => Springfield
state => IL
zip => 62707
1 => Array (5)
name => Jane Doe
adresse => 777 Luxury Way
Byen => Beverly Hills
state => CA
zip => 90210

Og her er en eksempel bruke {avsnitt} for å analysere resultatene

Kode:
Viser {$ total} poster: <br />
{Delnavn = nr sløyfe = $ resultater}
{$ Resultater [nr]. Name}
{$ Resultater [nr]. Adresse}
{$ Resultater [nr]. City}
{$ Resultater [nr]. Tilstand}
{$ Resultater [nr]. Zip} <br />
{Sectionelse}
<h1> Ingen resultater funnet! </ h1>
{/ Seksjon}

tags: , ,
postet i Guides , Programmering av Owen

Følg kommentarer via RSS | Legg igjen en kommentar | Trackback URL

Legg igjen din kommentar

© 2008 - 2012 - Alle Rettigheter - Ideamesh, Inc. 22 spørringer. 0,310 sekunder.