Oktober
17
2006

Cara: Menyiapkan MySQL recordset sebagai array dapat dipecah oleh Smarty

Berikut adalah contoh bagaimana untuk setup Anda query MySQL sehingga mereka dengan mudah dapat dikirimkan ke dan diurai oleh Smarty.

Set hasil akan menjadi array multidimensi. Dimensi pertama dari array adalah numerik dan mewakili setiap baris dari set hasil Anda. Dimensi kedua dari array adalah array asosiatif dimana nama-nama indeks adalah nama field yang Anda tentukan dalam permintaan Anda.

Kode:
/ / Init array untuk menampung hasil
$ Hasil = Array ();

/ / Cobalah untuk menghubungkan ke DB
$ Mysql = mysql_connect ($ host, $ user, $ password) or die ('Tidak dapat terhubung: ". Mysql_error ());

/ / Setup pernyataan SQL
$ Sql ​​= 'SELECT SQL_CALC_FOUND_ROWS nama, alamat, kota, negara, zip FROM pengguna';

/ / Jalankan query
$ Hasil = mysql_query ($ sql, $ mysql);

/ / Dapatkan hasil sebagai array asosiatif dan menempatkan setiap baris ke dalam array numerik diindeks
while ($ row = mysql_fetch_assoc ($ myresult))
$ Hasil [] = $ row;

/ / Sekarang kita bisa membuat query untuk mendapatkan jumlah hasil yang dikembalikan
$ Sql ​​= 'SELECT FOUND_ROWS () sebagai foundrows';

/ / Jalankan query
$ Hasil = mysql_query ($ sql, $ mysql);

/ / Simpan baris yang dihasilkan
$ Row = mysql_fetch_assoc ($ hasil);

/ / Dapatkan baris jumlah
$ Total = $ row ['foundrows'];

/ / Menetapkan hasil untuk smarty
$ Smarty-> assign ('hasil', $ hasil);
$ Smarty-> assign ('total', $ total);

/ / Tampilan template Smarty
$ Smarty-> display ('index.tpl');

ResultSet Anda akan terlihat seperti ini:

Kode:
Array (2)
0 => Array (5)
nama => John Doe
alamat => Jalan 123 Anonim
kota => Springfield
negara => IL
zip => 62707
1 => Array (5)
nama => Jane Doe
alamat => 777 Mewah Jalan
kota => Beverly Hills
negara => CA
zip => 90210

Dan di sini adalah contoh menggunakan {section} untuk mengurai hasil

Kode:
Menampilkan {$ total} catatan: <br />
{Nama bagian = nr loop = $ hasil}
{$ Hasil [nr]. Nama}
{$ Hasil [nr]. Alamat}
{$ Hasil [nr]. Kota}
{$ Hasil [nr]. Negara}
{$ Hasil [nr]. Zip} <br />
{Sectionelse}
<h1> No results found </ h1>!
{/ Section}

tags: , ,
diposting di Panduan , Pemrograman oleh Owen

Ikuti komentar melalui RSS Feed | Leave a comment | Trackback URL

Tinggalkan Komentar Anda

© 2008 - 2012 - All Rights Reserved - Ideamesh, Inc 22 pertanyaan. 0,450 detik.