tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
313
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    print147 print147 ist offline Mitglied
    Registriert seit
    Nov 2004
    Beiträge
    14
    Ich möchte für einen Artikel eine Radio-Button-Liste mit Produktoptionen ausgeben. Die Funktion getProductOptions liefert auch das gewünschte Ergebnis. Allerdings muß ich die Radio-Buttons und die CSS-Anweisungen auch in die Funktion integrieren (hier nicht dargestellt). Es braucht dann nur noch die Variable $opt an Smarty übergeben zu werden.
    Allerdings möchte ich die Formatierung nicht in PHP, sondern in Smarty abwickeln. Wie schreibe ich die Abfrageergebnisse in Arrays , die sich in Smarty bequem auslesen lassen? Wäre schön, wenn mir jemand weiterhelfen könnte.

    PHP-Code:
    function getProductOptions($chgDir$art_id)
    {
        
    /*
        gewünschtes Ergebnis
        Lizenzen
        Radio-Button keine Auswahl + 0.00
        Radio-Button Lizenz A + 10.00
        Radio-Button Lizenz B + 20.00

        Copyrightvermerk entfernen
        Radio-Button keine Auswahl + 0.00
        Radio-Button Copyrightvermerk im Footer entfernen + 15.00
    */

        
    include($chgDir."admin/dbconnect.php");
        if(!empty(
    $art_id))
        {
        
    $art_id     =   mysql_real_escape_string($art_id);
        
    $sql    =   "   SELECT DISTINCT optionsgruppen.optGrName";
        
    $sql    .=  "   FROM optionsgruppen, produktoptionen ";
        
    $sql    .=  "   WHERE produktoptionen.optGrID = optionsgruppen.optGrID ";
        
    $sql    .=  "   AND produktoptionen.art_id = $art_id ";
        
    //echo $sql."<br>";
        
    $res        =   @mysql_query($sql) or die(mysql_error());
        
    $num   =   @mysql_num_rows($res);
        
    //echo $num."<br>";
        
    mysql_query('SET NAMES "utf-8"');
        
    mysql_query("SET CHARACTER SET 'utf-8'");
        
    $opt    =   '';
        while(
    $rows mysql_fetch_array($res))
        {
            
    $opt    .=  ("<h5>".$rows['optGrName']."</h5>");
            
    $sql1     =  "   SELECT * FROM ";
            
    $sql1    .=  "   produktoptionen, optionen, optionsgruppen ";
            
    $sql1    .=  "   WHERE produktoptionen.prodOptID = optionen.optID ";
            
    $sql1    .=  "   AND produktoptionen.optGrID = optionsgruppen.optGrID ";
            
    //$sql1    .=  "   AND prodOpt.art_id = $art_id ";
            
    $sql1    .=  "   AND optionsgruppen.optGrName LIKE '$rows[optGrName]' ";
            
    $res1       =   @mysql_query($sql1) or die(mysql_error());
            
    $num1  =   @mysql_num_rows($res1);
            
    //echo $num1."<br>";
            
    mysql_query('SET NAMES "utf-8"');
            
    mysql_query("SET CHARACTER SET 'utf-8'");
            while(
    $rows mysql_fetch_array($res1))
            {
            
    $opt    .=  $rows['optName']." ".$rows['priceAddPref']." ".$rows['priceAdd']."<br>";
            }

        } 
    //END while($rows = mysql_fetch_array($res))
        
    return $opt;
        
    $smarty=>assign('opt'$opt);
        
    $smarty=>display('productdetails.tpl');
        } 
    //END if(!empty($art_id))
    }
    //Aufruf der Funktion:
    echo getProductOptions('../''1'); 
    Angehängte Dateien Angehängte Dateien
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    ANstelle von
    PHP-Code:
            $opt    .=  $rows['optName']." ".$rows['priceAddPref']." ".$rows['priceAdd'].
    Kannst du ein Arra schreiben. Wie der für Smarty aussehen muss, weiss ich grad nicht
    AUf alle Fälle gibt mein Beispiel ein Array der pro Zeile einen Eintrag hat zurück. DIeser Eintrag ist wiederum ein Array der dem $rows entspricht.
    PHP-Code:
    $opt[] = $rows
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

Ähnliche Themen

  1. Smarty: Mysql-Wert einem Array zuweisen
    Von mbecker im Forum PHP
    Antworten: 1
    Letzter Beitrag: 04.08.11, 00:12
  2. Byte Array in MySQL Datenbank schreiben/auslesen
    Von hebel2 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 5
    Letzter Beitrag: 28.09.10, 15:49
  3. [C#] MySQL Ergebnis einer ganzen Zeile in ein array schreiben
    Von RealMarkus im Forum .NET Datenverwaltung
    Antworten: 2
    Letzter Beitrag: 21.12.07, 17:46
  4. mysql, array und smarty
    Von kase im Forum PHP
    Antworten: 2
    Letzter Beitrag: 09.09.07, 15:31
  5. MySQL-Daten in ein ARRAY schreiben
    Von loddarmattheus im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 20.04.05, 16:55

Stichworte