DENKANSTOSS Mysql Ausgabe

dreambaser

Erfahrenes Mitglied
Hallo Leute;


Ich brauche mal nen Denkanstoß von euch.

Ich will eine Mysql Datenausgabe programmieren, die nach jedem 5. Titel einen <br> einfügt.

Wie müsste ich das machen ?

Ich hab mir überlegt vorher den Count der DB auszulesen, aber dann weiss ich nicht so recht weiter.

Habt Ihr ne Idee ?

mfg

Dream
 
Das machst Du am besten in der der Schleife, in der Du die Zeilen einliest.
Du setzt eine Laufvariable vor der Schleife auf 0.
In der Schleife erhöhst Du sie immer um 1.
Du prüfst, den Rest einer Division ("Modulus" Operator %) der Laufvariable durch 5 in der Schleife auf 0.
Wenn der Rest 0 ist gibst Du <br> aus.
Evtl. musst Du den startwert etwas anpassen, damit er nicht gleich als erstes ein br ausgibt.

Das wars.
 
Man könnte auch jedes Mal nach dem 5. Durchlauf die Variable wieder auf 0 setzen, und dann immer nur abfragen if($var == 5) { /*bedingung*/ $var = 0; }
Natürlich muss das wie mein Vorposter shcon sagte in einer Schleife passieren, in der $var immer am Ende erhöht wird.
ciao
 
das hab ich mir auch schon überlegt,

könnte mir das jemand irgendwie an diesem Beispiel mal zeigen ?

Ich hab zwar den Anfang drinn, weiss aber nicht so ganz genau wie ich weiter machen sollte.

Vielen Dank;

PHP:
$sql_select= "SELECT * FROM ".TABLE_CATALOG_IT."";
	$result_it = mysql_query($sql_select);
while ($it = mysql_fetch_array($result_it))
	{
	$i = 0; $i++;
	
	echo $i.'.'.$it['title_'.$_SESSION['language'].''].'<br>';
		}

mfg

dreambaser
 
Einfach Schritt für Schritt die Anleitung beachten:
PHP:
$sql_select= "SELECT * FROM ".TABLE_CATALOG_IT."";
	$result_it = mysql_query($sql_select);

//Du setzt eine Laufvariable vor der Schleife auf 0.
$i=0;
while ($it = mysql_fetch_array($result_it)) {
    //In der Schleife erhöhst Du sie immer um 1.
    $i++;
	
    echo $it['title_'.$_SESSION['language']];

    //Du prüfst, den Rest einer Division 
    //("Modulus" Operator %) der Laufvariable durch 5 
    //in der Schleife auf 0.
    //Wenn der Rest 0 ist gibst Du <br> aus.
    if (($i%5)==0) { echo "<br>"; }
}
 
So Problem gelöst ;)


Wie Ihr schon gesagt habt einfach den Wert erhöhen .. echt billig, *kopfklatsch*

Ich sollte vielleicht nicht immer so kompliziert denken ....

Trotzdem vielen Dank

Hier nochmal das Script :

PHP:
$sql_select2 = "SELECT * FROM ".TABLE_CATALOG_IT."";
	$result_it = mysql_query($sql_select2);
	
	while ($it = mysql_fetch_array($result_it))
	{
	 $i++;
	 $a++;
	
	echo $i.'. '.$it['title_'.$_SESSION['language'].''].'<br>';
	if ($a == 5)
	{
	echo '<br>';
	$a=0;
	}
	}

Vielen Dank nochmal


mfg

greetz -> da Dream
 
Zurück