Portal > Foren > PHP > PEAR, PECL und Frameworks > Smarty Variablen auch aus Datenbank beibehalten
Antwort
 
Themen-Optionen
Alt 25.03.2007, 15:55 Nach oben    #1
Benutzer
 
Registriert seit: 18.06.2006
Ort: Straubing
Beiträge: 85
Standard Smarty Variablen auch aus Datenbank beibehalten

Hallo zusammen, Ich habe folgenden Code

PHP-Code:
<?php

    $bspDB 
$db->query("SELECT
                             `text`
                         FROM
                             `tabele`"
);

    
$row $db->fetchAssoc($bspDB);
    
$var $row['text'];

    
// Nun den Text ans Template übergeben
    
$smarty->assign('text'$text);

?>
Wenn ich in $row['text'] jetzt etwa stehen habe "Es ist das Jahr {$lang.date}" wird mir das genauso ausgegeben. Ich will aber, dass auch hier die Smarty-Variable ersetzt bekomme... Wie geht das?

* {$lang.date} wurde in einem Sprachfile so deklariert.
PHP-Code:
<?php

    $lang         
= array();
    
/**
     * Weiterer Code ausgeklammert
     */
    
$lang['date'] = date('Y');

    
// Array ans Template übergeben
    
$smarty->assign('lang'$lang);

?>
Berti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.03.2007, 16:12 Nach oben    #2
leftover when bar closes
 
Benutzerbild von dsxs
 
Registriert seit: 29.06.2006
Ort: Bern
Beiträge: 123
Standard

Das geht nicht - muss es aber auch nicht.
Du arbeitest völlig gegen das Prinzip von Code / Design-Trennung und könntest genauso gut auf ein Template Sys. verzichten, wenn Du es so lösen willst.

Du hast 2 Möglichkeiten: den String in PHP bereits umzuwandeln, damit Smarty ihn lediglich noch ausgeben muss oder, wenn Du es richtig machst willst, konfigurierst Deine Templates so, dass "Es ist das Jahr" bereits statisch ist und Smarty mittels {$lang.date} lediglich noch das variable Jahr einsetzt.
__________________
Unkraut ist die Opposition der Natur gegen die Regierung der Gärtner.
ticketbörse

dsxs ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.03.2007, 17:32 Nach oben    #3
Erfahrener Benutzer
 
Benutzerbild von Bleistift
 
Registriert seit: 31.12.2006
Ort: Zürich
Beiträge: 298
Standard

Im Template machst du einfach so was:
Code:
{eval var=$text}
__________________
. <-- This is Punkt. Copy Punkt into your signature to help him on his way to world domination.
Bleistift ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.03.2007, 17:54 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 31.05.2006
Beiträge: 24
Standard

eval is evil, tzes dsxs hat scho Recht. Irgendwie konnte man aber auch ein String parsen, weiß aber net mehr genau wie. Kannst ja mal versuchen im Handbuch dich aber der Methode "fetch" (oder so ähnlich) vorzuhangeln.
KingCrunch ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.03.2007, 17:58 Nach oben    #5
Erfahrener Benutzer
 
Benutzerbild von Bleistift
 
Registriert seit: 31.12.2006
Ort: Zürich
Beiträge: 298
Standard

Zitat:
Zitat von KingCrunch Beitrag anzeigen
Irgendwie konnte man aber auch ein String parsen,
Genau das macht das eval von Smarty. Ist nicht == eval von php.
__________________
. <-- This is Punkt. Copy Punkt into your signature to help him on his way to world domination.
Bleistift ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.03.2007, 18:19 Nach oben    #6
Neuer Benutzer
 
Registriert seit: 31.05.2006
Beiträge: 24
Standard

*klickklick* Ja, du hast Recht ^^
Aber irgendwie hatte ich damals noch was anderes, wo ich dann halt anstelle einer Template-Datei einen String übergeben konnte.
PHP-Code:
$ungeparsed Ein String mit Smarty-Kram";
$geparsed = $smarty->fetch ($ungeparsed); 
Finde im Handbuch aber nur die Ressource-Typen und weiß nun nicht mehr, ob ich mir so ein Typ damals selbst zusammen gebastelt habe ^^
KingCrunch ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Variablen Michael PHP-Programmierung 1 23.09.2006 00:12
Problem bei Verarbeitung von Templates (Eigene Klassen) dago PHP-Programmierung 21 31.08.2006 16:02
Navigation auf Smarty umstellen?! napsio PEAR, PECL und Frameworks 4 25.01.2006 19:22
Datenbank und Sicherheit sparrow Datenbanken 23 05.11.2005 17:45
Variablen slater Allgemeine Java-Programmierung 6 04.11.2005 09:40


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:38 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44