Antworten auf deine Fragen:
Neues Thema erstellen

Modulo richtig anwenden?

rey

Der Frager ;)

hi,
ich habe ein php script bei der Ausgabe möchte ich jeden dritten Eintrag einen anderen div zuweisen.
ich habe mir folgends überlegt
PHP:
    if($i%3==0 && $i!=0){
        echo '<div class="box-small box-last">';
        }
    else{
        echo '<div class="box-small">';
        }
Leider bekommen bei mir alle 3 Einträge den div im else.Was mach ich bloß Falsch von der Logik stimmt es doch...
 

owieortho

Aktives Mitglied

AW: Modulo richtig anwenden?

Wäre es möglich (man sieht ja nur einen Teil des gesamten Codes), dass $i nicht inkrementiert wird und daher immer den gleichen Wert hat?
 

rey

Der Frager ;)

AW: Modulo richtig anwenden?

hätte noch sagen sollen das es sich um eine for schleife handelt
hier der gesamte abschnitt
PHP:
for($i=0;$i<$catcount;$i++)
{
    $catid= $var[$i][1];
    
    //echo $i;
    //echo $catid;
    $sqlCat = mysql_query('SELECT `name` FROM tx_contentcategory_categories  WHERE uid="'.$catid.'"');
    //$resultCat = mysql_fetch_object($sqlCat);
    $resultCat= mysql_fetch_object($sqlCat);
    
    if($i%3==0 && $i!=0){
        echo '<div class="box-small box-last">';
        }
    else{
        echo '<div class="box-small">';
        }
        echo'        <h2>Suchergebisse '.$resultCat->name.'</h2>
                    <ul>
                    ';
                    for($j=0; $j <sizeof($var); $j++)
                    {
                    
                    echo '<li>'.substr($var[$j][2],0,50).'...<br /><a href="index.php?id='.$var[$j][0].'">Weiter lesen...</a></li>'; 
                    
                    }
                        
                    echo'</ul>
                </div>';
               
    
}
echo '</div>';
 

sokie

Mod | Web

AW: Modulo richtig anwenden?

natürlich gibt es erstmal drei ausgaben über den else zweig:
1 $i=0 | $i%3==0 && $i!=0) ist false => elseAusgabe (false weil $i==0)
2 $i=1 | $i%3==0 && $i!=0) ist false => elseAusgabe
3 $i=2 | $i%3==0 && $i!=0) ist false => elseAusgabe
4 $i=3 |$i%3==0 && $i!=0) ist true => Ausgabe
 

rey

Der Frager ;)

AW: Modulo richtig anwenden?

danke!
hab es auf die 3 auf eine 2 geändert ;)
uhm geht doch nicht das 5. und auch das 7. element bekommen dann auch den div mit box-last
 
Zuletzt bearbeitet:

sokie

Mod | Web

AW: Modulo richtig anwenden?

wenn das sowirso nur den endpunkt markieren soll, wärst du mit
Code:
if($i == ($catcount-1)){

} else{

}
vielleicht logischer.
das Modulo wendet man eigentlich an, wenn etwas mehrmals und zwar jedes "n"te mal stattfinden(bzw nicht stattfinden) soll

aber
Warum einfach, wenn es auch Kompliziert geht ;)
 

rey

Der Frager ;)

AW: Modulo richtig anwenden?

ja aber so geht es dann doch erst recht nicht
wenn Catcount == 7 ist
dann macht er es ja nur auf den letzten
Ich möchte aber das ganze auf jeden dritten anwenden
 

fakerer

Aktives Mitglied

AW: Modulo richtig anwenden?

if($i%3==0 && $i!=0){
das passt schon so

nur kommt erst beim 4ten mal beim ersten mal bei dir last weil du mit 0 beginnst

wenn du !i von 1 weglaufen lässt sollte es passen
 

rey

Der Frager ;)

AW: Modulo richtig anwenden?

Ja ich habe eine andere variable noch definiert mit Startwert 1 die wird in der for dann immer hochgezählt
 

SineTempore

Nicht mehr ganz neu hier

AW: Modulo richtig anwenden?

also wenn du es folgendermaßen möchtest:
<div class="box-small">
<div class="box-small">
<div class="box-small box-last">
<div class="box-small">
<div class="box-small">
<div class="box-small box-last">
...

dann ist dir mit if($i%3 == 2) geholfen

vg
 
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

Statistik des Forums

Themen
118.635
Beiträge
1.538.450
Mitglieder
67.557
Neuestes Mitglied
Charal
Oben