XML und tabellen

  • XML und tabellen

    hallo zusammen,

    ich bin echt verzweifelt....
    bisher habe ich gelegentlich an meiner HP in html gebastelt und hab mich nun an php und joomla
    gewagt um nen shop aufzubauen. nun möchte ich mir die ausgabe der XML daten ein wenig
    anpassen -> von 1 spaltig in 2 oder 3 spaltig. wie es in html geht weiss ich, aber ich kanns nicht auf
    php + xml umsetzten

    der code ist derzeit wie folgt:

    PHP-Quellcode

    1. <table width="100%">
    2. <tr>
    3. <td width="120px" valign="top" rowspan="2">
    4. <?php
    5. // if (strlen($prow->Image180_URL"])>0) $dasbild=$prow->Image180_URL"];
    6. if (strlen($prow->Image120_URL)>0) $dasbild=$prow->Image120_URL;
    7. else if (strlen($prow->Image90_URL)>0) $dasbild=$prow->Image90_URL;
    8. else if (strlen($prow->Image60_URL)>0) $dasbild=$prow->Image60_URL;
    9. else if (strlen($prow->Image30_URL)>0) $dasbild=$prow->Image30_URL;
    10. else if (strlen($prow->Image_URL)>0) $dasbild=$prow->Image_URL;
    11. ?>
    12. <img src="<?php echo $dasbild; ?>" border="0">
    13. </td>
    14. <td>
    15. <a href="<?php echo $prow->DeepLink1; ?>" target="<?php echo $prow->ProgramID; ?>"><?php echo $prow->Title; ?></a>
    16. <br><?php echo $prow->Description_Short; ?>
    17. <br><a href="<?php echo $derlink1; ?>">DETAILS</a>
    18. </td>
    19. </tr>
    20. <tr>
    21. <td align="right">
    22. <a href="<?php echo $prow->DeepLink1; ?>" target="<?php echo $prow->ProgramID; ?>">
    23. <span><?php echo $antwort1[$i][2]; ?> (<?php echo $prow->DisplayPrice; ?>)</span>
    24. </a>
    25. </td>
    26. </tr>
    27. </table>
    Alles anzeigen


    pls help

    grüße

    pylori
  • Hi,

    XML ist nur ein Format. Wenn du eine Website im Browser anzeigen willst nutzt du weiterhin HTML/XHTML.Und auch PHP hat nichts damit zu tun.
    Wenn du im Browser auf "Quelltext anzeigen" klickst, hast du den kompletten Code der für die Anzeige relevant ist. Und das ist reines HTML.
    Sogesehen kann alles so bleiben... die erste Zeile ist ja schon zweispaltig.
  • die 2 spalten, so wie sie jetzt sind, bilden einmal das bild und einmal den text ab.
    ich würde es gern so machen:

    Quellcode

    1. <table width="" height="">
    2. <tr>
    3. <td>1 Spalte bild</td>
    4. <td>1 Spalte text</td>
    5. <td>2 Spalte bild</td>
    6. <td>2 Spalte text</td>
    7. </tr>
    8. </table>


    geht denn das so einfach?
    oder werden u.U. die daten doppelt ausgespuckt? <- edit: habs grad probiert, die daten kommen doppelt raus :-/
    d.h. muss ich beim rest auch noch was ändern?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von pylori ()

  • ja, hab ne schleife!
    soll/ kann/ darf ich dir mal den ganzen quellcode schicken?

    so soll es quasi aussehen... in einer schleife:

    |---1 spalte--|--- 2 spalte--|
    | Bild & Text | Bild & Text |
    | Bild & Text | Bild & Text |
    | Bild & Text | Bild & Text |
    | Bild & Text | Bild & Text |

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von pylori ()

  • was du brauchst ist modulo. if($i % 2) trifft bei jedem zweiten durchlauf zu.

    Quellcode

    1. <?php
    2. $arr = array(
    3. array('bild'=>'bild1','text'=>'text1'),
    4. array('bild'=>'bild2','text'=>'text2'),
    5. array('bild'=>'bild3','text'=>'text3'),
    6. array('bild'=>'bild4','text'=>'text4'),
    7. array('bild'=>'bild4','text'=>'text4')
    8. );
    9. $i;
    10. echo '<table border="1">';
    11. for($i=0; $i<count($arr); $i++) {
    12. if($i%2==0) {
    13. if($i>0) echo '</tr>';
    14. echo '<tr>';
    15. }
    16. printf('<td><img src="%s" alt="" /></td><td>%s</td>', $arr[$i]['bild'], $arr[$i]['text']);
    17. }
    18. if($i%2==0) echo '</tr>';
    19. echo "</table>";
    20. ?>
    Alles anzeigen