| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Gast
Beiträge: n/a
| hi, ich bin vor kurzem auf Smarty gestoßen und bin gerade dabei mein CMS darauf umzustellen...Bis jetzt klappt auch alles ganz gut...Aber bei der Navigation habe ich ein problem Mein bisheriger Code sag wie folgt aus: Code: $mvNavDb=$mcDB->mfQuery("SELECT * FROM ".mTblNavCat." WHERE navcat_status='1' ORDER by navcat_order ASC");
while($mvNav=$mcDB->mfFetchArray($mvNavDb)){
if($mvNav['navcat_align']==1){
$mvSiteNavClassBody = 'navLeftBody';
$mvSiteNavClassTable = 'navLeftTable';
unset($mvSiteNavLeftHead);
unset($mvSiteNavLeftBody);
if($mvNav['navcat_box']!=""){
include("navigation/".$mvNav['navcat_box']);
$mvSiteNavLeftHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavLeftBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
eval ("\$mvSiteNavLeftBox .= \"".mfGetTemplate("navigation_left_box")."\";");
}
else{
$mvNavLinkDb=$mcDB->mfQuery("SELECT * FROM ".mTblNav." WHERE nav_cat='".$mvNav['navcat_id']."' ORDER by nav_order ASC");
while($mvNavLink=$mcDB->mfFetchArray($mvNavLinkDb)){
$mvSiteNavClassBody = "navLeftBody";
$mvSiteNavClassTable = 'navLeftTable';
eval ("\$mvSiteNavLeftBody .= \"".mfGetTemplate("navigation_link")."\";");
}
$mvSiteNavLeftHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavLeftBox .= \"".mfGetTemplate("navigation_left_link_box")."\";");
}
}
elseif($mvNav['navcat_align']==2){
$mvSiteNavClassBody = 'navRightBody';
$mvSiteNavClassTable = 'navRightTable';
unset($mvSiteNavRightHead);
unset($mvSiteNavRightBody);
if($mvNav['navcat_box']!=""){
include("navigation/".$mvNav['navcat_box']);
$mvSiteNavRightHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavRightBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
eval ("\$mvSiteNavRightBox .= \"".mfGetTemplate("navigation_right_box")."\";");
}
else{
$mvNavLinkDb=$mcDB->mfQuery("SELECT * FROM ".mTblNav." WHERE nav_cat='".$mvNav['navcat_id']."' ORDER by nav_order ASC");
while($mvNavLink=$mcDB->mfFetchArray($mvNavLinkDb)){
$mvSiteNavClassBody = "navRightBody";
$mvSiteNavClassTable = 'navRightTable';
eval ("\$mvSiteNavRightBody .= \"".mfGetTemplate("navigation_link")."\";");
}
$mvSiteNavRightHead=$nav['navcat_title'];
eval ("\$mvSiteNavRightBox .= \"".mfGetTemplate("navigation_right_link_box")."\";");
}
}
elseif($mvNav['navcat_align']==3){
$mvSiteNavClassBody = 'navTopBody';
$mvSiteNavClassTable = 'navTopTable';
unset($mvSiteNavTopHead);
unset($mvSiteNavTopBody);
if($mvNav['navcat_box']!=""){
include("navigation/".$mvNav['navcat_box']);
$mvSiteNavTopHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavTopBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
eval ("\$mvSiteNavTopBox .= \"".mfGetTemplate("navigation_top_box")."\";");
}
else{
$mvNavLinkDb=$mcDB->mfQuery("SELECT * FROM ".mTblNav." WHERE nav_cat='".$mvNav['navcat_id']."' ORDER by nav_order ASC");
while($mvNavLink=$mcDB->mfFetchArray($mvNavLinkDb)){
$mvSiteNavClassBody = "navTopBody";
$mvSiteNavClassTable = 'navTopTable';
eval ("\$mvSiteNavTopBody .= \"".mfGetTemplate("navigation_link")."\";");
}
$mvSiteNavTopHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavTopBox .= \"".mfGetTemplate("navigation_top_link_box")."\";");
}
}
elseif($mvNav['navcat_align']==4){
$mvSiteNavClassBody = 'navBottomBody';
$mvSiteNavClassTable = 'navBottomTable';
unset($mvSiteNavBottomHead);
unset($mvSiteNavBottomBody);
if($mvNav['navcat_box']!=""){
include("navigation/".$mvNav['navcat_box']);
$mvSiteNavBottomHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavBottomBody .= \"".mfGetTemplate($mvNavTemplate)."\";");
eval ("\$mvSiteNavBottomBox .= \"".mfGetTemplate("navigation_bottom_box")."\";");
}
else{
$mvNavLinkDb=$mcDB->mfQuery("SELECT * FROM ".mTblNav." WHERE nav_cat='".$mvNav['navcat_id']."' ORDER by nav_order ASC");
while($mvNavLink=$mcDB->mfFetchArray($mvNavLinkDb)){
$mvSiteNavClassBody = "navBottomBody";
$mvSiteNavClassTable = 'navBottomTable';
eval ("\$mvSiteNavBottomBody .= \"".mfGetTemplate("navigation_link")."\";");
}
$mvSiteNavBottomHead=$mvNav['navcat_title'];
eval ("\$mvSiteNavBottomBox .= \"".mfGetTemplate("navigation_bottom_link_box")."\";");
}
}
}
eval ("\$mvSiteNavBottom .= \"".mfGetTemplate("navigation_bottom")."\";");
eval ("\$mvSiteNavTop .= \"".mfGetTemplate("navigation_top")."\";");
eval ("\$mvSiteNavRight .= \"".mfGetTemplate("navigation_right")."\";");
eval ("\$mvSiteNavLeft .= \"".mfGetTemplate("navigation_left")."\";");
navigation_left.tpl Code: $mvSiteNavLeftBox Code: <table width="100%" class="navLeftTable" border="0" cellspacing="1" cellpadding="2"> <tr> <td class="navLeftHead" align="center"> $mvSiteNavLeftHead </td> </tr> <tr> <td class="navLeftBody"> $mvSiteNavLeftBody </td> </tr> </table> [img]images/blank.gif[/img] Code: <table width="100%" class="navLeftTable" border="0" cellspacing="1" cellpadding="2"> <tr> <td class="navLeftHead" align="center"> $mvSiteNavLeftHead </td> </tr> $mvSiteNavLeftBody </table> [img]images/blank.gif[/img] Code: <tr> <td class="$mvSiteNavClassBody"> $mvNavLink[nav_title] </td> </tr> Als ich es umgestellt habe, habe ich die ganzen eval Funktionen durch Smarty Funktionen ersetzt Code: // z.B.
eval ("\$mvSiteNavLeft .= \"".mfGetTemplate("navigation_left")."\";");
// in
$mcTpl->assign("mSiteNavLeft", $mcTpl->fetch('navigation_left.tpl'));
Kann mir vielleicht jemand sagen wie ich das machen muss, damit es klappt? Smarty ist ziemlich genial...jedoch auch ziemlich schwer sich einzuarbeiten, weils doch sehr umfangreich ist Würde mich über jede Antwort freue, die mir helfen könnte das Problem zu lösen. Danke...=)[/php] |
|
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 25.04.2005
Beiträge: 1.356
![]() | Warum so stark in einzelne Datei aufgesplittet? Würde sich zum anderen auch auf die Übersichtlichkeit auf Dateiebene auswirken, wenn du die Navigation komplett in eine Datei legen würdest. Ansonsten verstehe ich dein Problem nicht, erwartest du das dir jemand das Script schreibt? In Smarty einzuarbeiten ist doch leicht vor allen weil es die komplette Doku offiziell auch auf Deutsch gibt. Aber das sollte das sein was du suchst http://smarty.php.net/manual/de/lang...unction.assign
__________________ Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält. |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Smarty + MySQL = immer falsche Ausgabe | m0use` | PHP Tipps 2006 | 44 | 21.11.2008 20:30 |
| Navigation fixen | Desert | PHP Tipps 2008 | 0 | 12.05.2008 17:00 |
| Smarty: Templatedateien werden nicht aktualisiert! | DER_Brain | PHP Tipps 2008 | 9 | 24.04.2008 22:40 |
| Problem mit Smarty | ccfirefox | HTML, Usability und Barrierefreiheit | 1 | 25.10.2007 16:19 |
| Was ist Aufgabe des Templates (Smarty), was nicht? | agrajag | PHP Tipps 2007 | 8 | 24.02.2007 13:19 |
| Smarty => 1ste allgemeine Verunsicherung | Canni | PHP Tipps 2006 | 7 | 10.10.2006 17:56 |
| Smarty + Oop Problem | Komandar | PHP Tipps 2006 | 5 | 25.07.2006 14:36 |
| Smarty verschachtelt | snatch-ic | PHP Tipps 2006 | 16 | 28.02.2006 20:54 |
| Navigation | snatch-ic | PHP Tipps 2007 | 4 | 08.01.2006 12:11 |
| Frage zu Smarty | PHP Tipps 2005-2 | 10 | 07.07.2005 14:49 | |
| Smarty Error | Simon9990 | PHP Tipps 2005-2 | 8 | 07.07.2005 09:34 |
| Smarty und X-Cart Profis gesucht | Beitragsarchiv | 1 | 21.05.2005 13:38 | |
| [Erledigt] includepathproblem pear blockiert smarty und umgekehrt | PHP Tipps 2005 | 1 | 08.05.2005 18:46 | |
| Mit Templates Navigation erstellen? (welches Templatesyste?) | zwelch | PHP Tipps 2004-2 | 5 | 18.11.2004 15:14 |
| Smarty? Die wesentlichen Vorteile? | Off-Topic Diskussionen | 7 | 20.09.2004 13:04 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| smarty navigation, navigation mit smarty, navigation smarty, smarty unset, navigation with smarty, page navigation smarty, navigation mit smarty erstellen, smarty nav, smarty navi, seitennavigation mit smarty, smarty navigation erstellen, menu mit smarty, smarty php navigation, smarty navigation kategorie, mysql smarty navigation, smarty navigation mysql, umstellung smarty 2 3, unset smarty, seiten smarty navigation, smarty {unset} |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.