2016-07-01 18 views
-1

im Smarty Newbee. Es wird versucht, einige Daten aus der Datenbank anzuzeigen, aber auf der Browserseite wird nichts angezeigt. Ich habe versucht, die Abfrage in PHP-Datei zu zeigen, alles funktioniert gut, aber ich kann nicht in Smarty anzeigen. Mein Code hier: New.phpZeige Daten von DB, Smarty

<?php 
include 'Smarty/libs/Smarty.class.php'; 
$link = mysqli_connect ('localhost','xxxx','xxxx','xxxx'); 

$sql = "SELECT * FROM `s_news`"; 
$result = mysqli_query($link,$sql); 

while($row = mysqli_fetch_assoc($result)) { 
$data[] = $row; # $data is the array created for use in the Smarty template. 
$smarty->assign('data', $data); 
$smarty->display('text.tpl'); 
} 
?> 

Text.tpl Datei:

{foreach from=$cat1 item=item} 
<table cellpadding="2" cellspacing="0"> 
<tr> 
<td>Username:</td> 
</tr> 
{foreach from=$data item=item key=key} 
<tr> 
<td>{$item.date}</td> 
<tr> 
{/foreach} 
</table> 
{/foreach} 

Dank!

+0

sollten Sie außerhalb der Schleife zuweisen –

+0

@ YourCommonSense pls Antwort. Ich kann mir nicht vorstellen, was du gesagt hast. –

Antwort

1

Sie ordnen zu und versuchen, die Vorlage in der While-Schleife anzuzeigen. Tun Sie es draußen, nachdem alle Daten gesammelt wurden

while($row = mysqli_fetch_assoc($result)){ 
$data[] = $row; # $data is the array created for use in the Smarty template. 
} 
$smarty->assign('data', $data); 
$smarty->display('text.tpl'); 
+0

, funktioniert nicht, mb Ich muss einige andere Bibliotheken enthalten? Wie denkst du? –

+0

Wenn das alles Ihr Code ist, sollten Sie auch $ smarty mit $ smarty = new Smarty() initialisieren. Bitte schauen Sie sich das Handbuch an: http://www.smarty.net/docs/en/installing.smarty.basic.tpl – Borgtex

+0

jetzt mache ich, folgen Sie Ihren Anweisungen. Versucht var_dump von mysqli Abfrage, ich bekomme Informationen, aber ich denke Fehler in der Datei text.tpl. Bitte überprüfen Sie, text.tpl korrekt? Der Name der Spalten, die angezeigt werden sollen, sind 'Datum' und 'Nachrichten'. –