Logikproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Logikproblem

    Moin jungs. Habe ein Logikproblem, bzw ich kann nicht wirklich mit Mudolo umgehen.
    Ich möchte in einer Tabelle 3 Bilder in einer Zeile ausgeben und wenn drei voll sind, dann soll eine neue Zeile erstellt werden. Hört sich eigentlich recht einfach an. Ich habe das u.a. folgend probiert:

    PHP-Code:
    <table width="95%">
        <tr>
    <?

        while ($row = mysql_fetch_array($result)) 
        { 
            $x = 0;
            while ($x < 7) 
            { 
                $x++;
                    if ($x % 3) { ?><td width="33%"><a href=....><img src=..... ></td> <?php }
                                    
                    else { 
    ?></tr><tr><td colspan="2">&nbsp;</td></tr><tr><?php }

            }
        } 
    ?>
    </table>
    und schon mal im voraus, ich weiß das es mit dem ständigen <? und ?> nicht sehr schoen ist

    ich habe da gestern eine ganze weile dran gehockt und eine ganze menge an möglichkeiten durchprobiert. mittlerweile hab ich ne blockade
    wäre nett wenn mir einer von euch weiterhelfen könnte
    Auf der Verpackung stand: "Windows 2000/XP oder besser", also habe ich mir einen Mac gekauft

  • #2
    ich hab mal ein Testcase mit einem array gebastelt:
    PHP-Code:
    <table width="95%">
        <tr>
        <?php
        $array 
    = array(012345678910);
        
    $x 0;
        foreach (
    $array as $value) {
            if (
    $x == OR $x 3) {
                    
    ?><td><?=$value?></td><?php
            
    } else {
                    
    ?></tr><tr><td><?=$value?></td><?php
            
    }
            ++
    $x;
        }
        
        while (
    $x 3) {
                
    ?><td>&nbsp;</td><?php
                
    ++$x;
        }
        
    ?>
        </tr>
    </table>
    füllt zusätzlich überzählige Zellen mit &amp;nbsp; damit die Row-Anzahl auch in der letzten Zeile richtig ist

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      besten dank
      Auf der Verpackung stand: "Windows 2000/XP oder besser", also habe ich mir einen Mac gekauft

      Kommentar


      • #4
        In deinem Beispiel wird er vermutlich immer nur 2 Bilder in eine Reihe packen, oder?

        (auf den threadstarter bezogen)
        Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
        var_dump(), print_r(), debug_backtrace und echo.
        Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
        Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
        Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

        Kommentar


        • #5
          ne .. das ist ganz seltsam. er macht 5x das Selbe und macht bei der ersten zeile 2 rein, in der nächsten 3 usw .. ganz komisch sieht das aus
          Auf der Verpackung stand: "Windows 2000/XP oder besser", also habe ich mir einen Mac gekauft

          Kommentar


          • #6
            @topcistarter
            Ohne deinen HTML Quellcode gesehen zu haben, sage ich jetzt mal: Der ist bestimmt falsch...
            Bei jedem Durchlauf deiner äusseren Schleife setzt du x wieder 0. imho kommt der nie und nimmer in die Bedingung wo x % 3 null sein soll.
            Überigens % Operator ist keine Funktion also besser
            PHP-Code:
            if($x%== 0){
            ...

            Gruss

            tobi
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              stimmt danke.
              Auf der Verpackung stand: "Windows 2000/XP oder besser", also habe ich mir einen Mac gekauft

              Kommentar

              Lädt...
              X