Antworten auf deine Fragen:
Neues Thema erstellen

Tabelle einfügen in php Code?

mirmoos

Nicht mehr ganz neu hier

Hallo Leute ich bastel grad an meinem Webshop, Basis ist der XT: Commerce Shop. Nun habe ich folgendes Problem, ich hab hier einen Codeteil der die Shopkategorien in der Navbar auflistet und ich will das die Hauptkategorie in einer Tabellenzelle angezeigt wird + Hintergrundgrafik und die unterkategorien in einer darunterliegende Tabellenzelle ohne Hintergrundgrafik. Hier hab ich mal den Code ich hoffe ihr könnt euch einigermaßen reinlesen.

Zum Beispiel habe ich hier eine Website gefunden wie es aussehen soll: http://www.elevator.de


Und hier meine Site wie es im mom aussieht: http://www.clubsupply.de (Design ist noch im Alpha status ;)

PHP:
<?php
/* -----------------------------------------------------------------------------------------
   $Id: xtc_show_category.inc.php 1262 2005-09-30 10:00:32Z mz $

   XT-Commerce - community made shopping
   http://www.xt-commerce.com

   Copyright (c) 2003 XT-Commerce
   -----------------------------------------------------------------------------------------
   based on: 
   (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
   (c) 2002-2003 osCommerce(categories.php,v 1.23 2002/11/12); www.oscommerce.com
   (c) 2003     nextcommerce (xtc_show_category.inc.php,v 1.4 2003/08/13); www.nextcommerce.org 

   Released under the GNU General Public License 
   ---------------------------------------------------------------------------------------*/

     function xtc_show_category($counter) {
    global $foo, $categories_string, $id;


    // image for first level
    $img_1='<img src="templates/'.CURRENT_TEMPLATE.'/img/icon_arrow.jpg" alt="" />&nbsp;';

    for ($a=0; $a<$foo[$counter]['level']; $a++) {

      if ($foo[$counter]['level']=='1') {
      $categories_string .= "&nbsp;-&nbsp;";
      }

      $categories_string .= "&nbsp;&nbsp;";

    }
    if ($foo[$counter]['level']=='') {
    if (strlen($categories_string)=='0') {
    $categories_string .='<table width="100%"><tr><td>';
    } else {
    $categories_string .='</td></tr></table><table width="100%"><tr><td>';
    }

    $categories_string .= $img_1;
    $categories_string .= '<b><a href="';
    } else {
    $categories_string .= '<a href="';
    }

    $cPath_new=xtc_category_link($counter,$foo[$counter]['name']);
  
    $categories_string .= xtc_href_link(FILENAME_DEFAULT, $cPath_new);
    $categories_string .= '">';

    if ( ($id) && (in_array($counter, $id)) ) {
      $categories_string .= '<b>';
    }

    // display category name
    $categories_string .= $foo[$counter]['name'];

    if ( ($id) && (in_array($counter, $id)) ) {
      $categories_string .= '</b>';
    }

    if ($foo[$counter]['level']=='') {
    $categories_string .= '</a></b>';
    } else {
    $categories_string .= '</a>';
    }

    if (SHOW_COUNTS == 'true') {
      $products_in_category = xtc_count_products_in_category($counter);
      if ($products_in_category > 0) {
        $categories_string .= '&nbsp;(' . $products_in_category . ')';
      }
    }

    $categories_string .= '<br />';

    if ($foo[$counter]['next_id']) {
        xtc_show_category($foo[$counter]['next_id']);
    } else {
        $categories_string .= '</td></tr></table>';
    }
  }

?>
Danke schonmal im Voraus.

Gruß Chris
 

saila

Moderatorle

AW: Tabelle einfügen in php Code?

Welche Version von XT nutzt du?

Bei mir lautet die Datei "xtc_sho_category_content.inc.php"
Zudem müsste in deiner funktion nach global ein require_once folgen, welcher die Datei xtc_image.inc.php bereitstellt, damit du deine Hintergrundgrafik sauber einbetten kannst und nicht so ein schlechten Code wie
Code:
 [COLOR=#000000][COLOR=#dd0000]
<img src="templates/'[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700].[/COLOR][COLOR=#0000bb]CURRENT_TEMPLATE[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]'/img/icon_arrow.jpg" alt="" />&nbsp;'[/COLOR][COLOR=#007700]; 
[/COLOR]

[/COLOR]aufgebaut werden muss.

Darüber hinaus änderst du im Grunde nichts in der php-Datei bzgl. Kategorien sondern du passt die entsprechende Template an.
Sprich du musst lediglich das Hintergundbild festlegen und dann per Smarty-Variable das wiederum in der Template einbinden.

 

mirmoos

Nicht mehr ganz neu hier

AW: Tabelle einfügen in php Code?

Mit Template BG grafik ändern is das aber ned abgetan weil die bg grafik ja nur Hinter der Main Kategorie stehen soll aber nicht hinter der sub kategorie. schau dir mal das Beispiel auf www. eleveator.de an so hätt ich mir das vorgestellt. es muss auch funzten da die Site auch mit XT Commerce 3.0.4 erstellt wurde.

Version nutze ich die 3.0.4 Sp2.1

Ich hab schon so viel probiert das funzt aber alles nicht.

Mein Ansatz war: Ich bau eine Tabelle um die variable der Maingrafik herum um ein Hintergrundbild setzen zu können, das funzt aber so ned weil der Code hier so verschachtelt ist das automatisch die Subkat. auch die Tabelle dahinter hätte... Das ist mein Probem.

Aber Danke schonmal ;)

PS: Der Code stammt nicht von mir, is komplett so aus dem Shop raus, an dem hab ich noch nix geändert (;
 

saila

Moderatorle

AW: Tabelle einfügen in php Code?

Jo stimmt auch wieder - jetzt habe ich mich in der Datei vertan. Dennoch besteht deine Lösung darin, in der Datei

xtc_show_category.inc.php (sofern unverändert) in Zeile 36 und Zeile 38 die jeweilige Veränderung vorzunehmen. Das wären die "unnützen" Tabellen. Wenn du jedoch aussschl. die Hauptkategorie mit einem Hintergrundbild versehen möchtest, machst du einfach eine div-Box um die Kategoriebezeichnung. Das beginnt in Zeile 42 vor dem

Code:
// alt
<b><a href="

// neu
<div style="background: ...;">

und endet in Zeile 60
Code:
// alt
</b>

// neu 
</b></div>

Besser wäre jedoch das gesamte Menü als Liste darzustellen (was es auch letztlich ist um den HTML-quelltext zu verbessern.

Zu der Sache mit Originaldatei - ich habe ja nicht gesagt, das der Fehler von dir kam. XT-Commerce ist im Grunde eine Ansammlung von Fehlern.
 

mirmoos

Nicht mehr ganz neu hier

AW: Tabelle einfügen in php Code?

Hi, jo der Code ist ziemlich eigenartig. hab schon öfters fremden code verändert aber der hier ist echt, puuhhh...

Ich habs jetz mit einer Liste gelöst und die einzelenen Listenelemente einer CSS Class zugewiesen und dann über den Stylesheet halt bearbeitet geht viel schöner.

Aber Danke das du nochmal geschrieben hast (-;
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Keine Mitglieder online.

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben