Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: eigenen (neuen) Smarty definieren

    mojak

    • Neu im Forum
    • Beiträge: 7
    eigenen (neuen) Smarty definieren
    am: 27. März 2010, 15:08:31
    Hallo Leute,

    ich hab ein kleines Problem bei dem ich gestern 4 Stunden auf der Stelle getreten bin. Und zwar habe ich eine kleine DB Abfrage in der "Product_info.php" erstellt und zum test per ECHO ausgeben lassen. Klappt alles wunderbar soweit. Nun will ich aber keine echo Ausgabe der DB Abfrage in der "Product_info.php", weil es 1) die Seite zerreist und 2) es natürlich in die "Product_info_v1.html" gehört. Die "Product_info_v1.html" arbeitet aber mit den sogenannten smartys und genau da ist mein Problem. Ich kriege es einfach nicht hin das was ich aus der DB ausgelesen habe (in der product_info.php) in ein smarty zu packen um es dann in der "Product_info_v1.html" wiederzugeben/auszulesen wie es z.B der fall beim "$PRODUCTS_NAME" ist.

    Würde mich sehr über etwas Hilfestellung oder Tips freuen.

    ps: hier ist mal der php code meiner Abfrage inkl. echo Ausgabe:

    Code: PHP  [Auswählen]
    $categories_query = xtc_db_query("SELECT bla bla FROM tabelle ");

    if ($number_of_categories <200) {
    $rows = 0;
    echo $product_info['products_name'] . ' Dieses zubehör könnte Sie interessieren: <table width="100%"><tr><td valign="top"><ul>';
    while ($categories = xtc_db_fetch_array($categories_query)) {
    $rows++;
    $cPath_new = xtc_get_path($categories['categories_id']);
    $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
    echo ' <li>' . ($categories['categories_name']) . '' . "\n";
    if ($rows>= ($number_of_categories / 3)) {
    echo '</ul></td><td valign="top">' . "\n";
    $rows=0;
    }
    }
    echo '</ul></td></tr></table>';
    }
     
    Wie gesagt es klappt wunderbar. Es ließt es aus und gibt es auch per echo aus aber in einen Smarty packen, damit ich es in der product_info_v1.html verwenden kann kriege ich nicht hin.

    Gruß.



    Linkback: https://www.modified-shop.org/forum/index.php?topic=4781.0
    Shop Hosting

    jonnyB

    • Fördermitglied
    • Beiträge: 519
    • Geschlecht:
    eigenen (neuen) Smarty definieren
    Antwort #1 am: 27. März 2010, 18:26:23
    erstmal solltest du deine ausgabe in eine variable übergeben

    Code: PHP  [Auswählen]
    $deine_variable = (dein echo);
    und dann dies an smarty übergeben

    Code: PHP  [Auswählen]
    $info_smarty->assign('dein_smarty_name', $deine_variable);
    und in der product_info.html haste dann

    Code: PHP  [Auswählen]
    {$dein_smarty_name}

    mojak

    • Neu im Forum
    • Beiträge: 7
    eigenen (neuen) Smarty definieren
    Antwort #2 am: 27. März 2010, 19:01:44
    Vielen dank dir. Das klappt jetzt soweit ganz gut. Das einzige Problem was ich nun habe ist, das wenn ich die smarty variable in der product_info_v1.html aurufe er mir nur 1 inhalt der DB abfrage wiedergebt. Per echo in der product_info.php Datei zeigt er mit alle zubehör teile an, aber sobald ich das per smarty mache zeigt er mir nur noch ein zubehör teil an.

    Mein code:

    Code: PHP  [Auswählen]
    $categories_query = xtc_db_query("SELECT bla bla FROM tabelle "););

                            if ($number_of_categories <200) {
                            $rows = 0;
                            echo $product_info['products_name'] . ' Dieses zubehör könnte Sie interessieren: <table width="100%"><tr><td valign="top"><ul>';
                            while ($categories = xtc_db_fetch_array($categories_query)) {
                              $rows++;
                              $cPath_new = xtc_get_path($categories['categories_id']);
                              $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
                             $crosslinks =  ' <li>' . ($categories['categories_name']) . '' . "\n";
                              if ($rows >= ($number_of_categories / 3)) {
                                    echo '</ul></td><td valign="top">' . "\n";
                                    $rows=0;

                                    $info_smarty->assign('cross', $crosslinks);

                              }
                            }
          echo '</ul></td></tr></table>';

              }
     

    jonnyB

    • Fördermitglied
    • Beiträge: 519
    • Geschlecht:
    eigenen (neuen) Smarty definieren
    Antwort #3 am: 27. März 2010, 19:24:06
    wie haste es denn jetzt übergeben?

    EDIT: ahh nicht richtig gelesen.....du mußt dir da ein string basteln

    mojak

    • Neu im Forum
    • Beiträge: 7
    eigenen (neuen) Smarty definieren
    Antwort #4 am: 27. März 2010, 19:29:12
    Ah danke. Kannst du mir denn ein kleinen Anstupser geben, damit ich langsam los rolle ;).
    Würde mich sehr freuen.

    Gruß mojak.

    jonnyB

    • Fördermitglied
    • Beiträge: 519
    • Geschlecht:
    eigenen (neuen) Smarty definieren
    Antwort #5 am: 27. März 2010, 19:40:03
    Code: PHP  [Auswählen]
    $crosslinks = (html_anfang);
    // deine schleife
    $crosslinks .= (dein schleifen inhalt);
    // ende deine schleife
    $crosslinks .= (html_abschluß);

    $info_smarty->assign('cross', $crosslinks);
     
    so in der art würd ich das machen

    12 Antworten
    796 Aufrufe
    17. Januar 2024, 09:20:42 von je_web
    3 Antworten
    1761 Aufrufe
    26. Januar 2017, 17:25:29 von awids
    2 Antworten
    4416 Aufrufe
    08. Oktober 2010, 14:08:48 von dragonfly76
    9 Antworten
    5778 Aufrufe
    25. Juni 2012, 16:05:33 von NichdeFisch
               
    anything