MySQL- Ausgabe nach 6 ausgaben mit einem <br /> versehen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ausgabe
code
dank
durchlauf
ergebnis
fehler
idee
mache
machen
null
passen
rest
schleife
stehen
string
tip
weg
zeile
zeug
zugreifen
-
hey Leute.
Bin dadran interessiert, dass ich alle 6 Ausgaben ein Codestück einfügen kann(<br />) und das dann dieAusgabe einfach weiter ausgeführt wird (also immer unterbrechun (6; 12; 18; 24 usw...).
hat jemand eine idee wie man das machen könnte? vorzugsweise PHP. habe garkeine idee, wie man das machen kann, würde mich deshalb über tipps freuen
Daniel -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Das müsste doch eigentlich mit Modulo funktionieren. Kommt bei der Funktion ein Rest heraus, dann mache keinen Umbruch, kommt bei Modulo 6 kein Rest raus, dann mache einen Umbruch.
if (wert%6==0) mache Zeilenumbruch else mache keinen Zeilenumbruch
-
sonok schrieb:
oder man macht eine einfache integer-variabel, die mit jeder ausgabe mit 1 addiert wird und bei 6 dann wieder auf null gestelt wird - da gibts wohl viele wege (diesen nehme ich immer)
i = 0
if ( i != 5)
{
bla
i=i+1
}
else
{
bla + <br>
i = 0
}
Dann mach wenigstens ne Schleife draus, damit das auch funktioniert -
das erste i = 0 also variablendefinition steht natürlich außerhalb einer schleife, der rest natürlich drinnen
also i = 0
schleife zum auslesen
{
der rest von oben
} -
sonok schrieb: oder man macht eine einfache integer-variabel, die mit jeder ausgabe mit 1 addiert wird und bei 6 dann wieder auf null gestelt wird - da gibts wohl viele wege (diesen nehme ich immer)
i = 0
if ( i != 5)
{
bla
i=i+1
}
else
{
bla + <br>
i = 0
}
karpfen schrieb:
Dann mach wenigstens ne Schleife draus, damit das auch funktioniert
danke. habe es in meine Schleife einbauen können ^^
(hatte das doch irgendwo schomal verwendet, wieso bin ich nicht dadrauf gekommen...)
hättet ihr noch eine idee, wie ich herausfinden kann, ob die ausgabe aus der mysql- DB die letzte ausgabe ist, bzw. wie ich die letzte ausgabe finde und herausfinde, ob es die Schleife sauber beendet oder ob ich das noch zusätzlich machen muss?
(also das hinter dem letzten ein <br /> und nicht plötzlich 2 stehen?)
-
einfach das br nicht nach dem sechsten, sondern vor dem ersten eintrag reinbasteln
-
Habe das Script jetzt eingebaut. leider führt das zum totalzusammbruch meiner seite...
...ohne irgendeine Fehlermeldung
hoffe dadrauf das meine beiden lieblingsmods mir weder weiterhelfen können
<? while($row = mysql_fetch_assoc($ergebnis)) { // schleifenanfang // auszugebendes zeug( $i = 0; if ( $i != "5") { $tr = 0; $i= i+1 ; } else { $i = 0; $tr = 1; echo :"</tr>"; } } // schleifenende if ($tr == "0") { echo :"</tr>"; } ?>
habe es überprüft und der fehler muss 100%ig an diesem teil liegen. irgendwie erkenne ich aber keinen fehler.
hätte jrmand von euch ein idee?
Gruß
Daniel -
das erste $i = 0 muß außerhalb der schleife stehen, denn so machst du einen endlosschleife - i wird immer wieder auf 0 gesetzt, bei jedem durchlauf
$i = 0; { // schleifenanfang // auszugebendes zeug( if ( $i != "5") { $tr = 0; $i= i+1 ; } else { $i = 0; $tr = 1; echo :"</tr>"; } } // schleifenende
das hatte ich meinem ersten post ein wenig verquirlt geschrieben - sorry
Beitrag zuletzt geändert: 23.9.2009 22:01:35 von sonok -
sonok schrieb:
das erste $i = 0 muß außerhalb der schleife stehen, denn so machst du einen endlosschleife - i wird immer wieder auf 0 gesetzt, bei jedem durchlauf
$i = 0; { // schleifenanfang // auszugebendes zeug( if ( $i != "5") { $tr = 0; $i= i+1 ; } else { $i = 0; $tr = 1; echo :"</tr>"; } } // schleifenende
das hatte ich meinem ersten post ein wenig verquirlt geschrieben - sorry
macht nichts. habe es jetzt geändert. leider hat sich am bild meiner webiste nichts geändert. immernoch nichts vorhanden -_-
wenn ich die tile in der schleife entferne funktioniert es aber. immer noch keine fehlermeldung da -_-
ist vielleicht direckt im Quellcode ein fehler?
würde mich über tipps freuen.
Gruß
Daniel -
Ich poste jetzt einfach mal den kompletten Code:
<? $i = 0; while($row = mysql_fetch_assoc($ergebnis)) { // Schleifenanfang // auszugebendes zeug if ( $i != 5){ // Bitte keine Anführungszeichen sonnst prüfst du auf einen String $tr = 0; $i+=1; } else{ $i=0; $tr = 1; echo "</tr>"; } } //Schleifenende if ($tr == 0){ // Bitte keine Anführungszeichen sonnst prüfst du auf einen String echo "</tr>"; } ?>
€dit: Da hat sich ein : zuviel rein geschlichen.
Beitrag zuletzt geändert: 23.9.2009 22:32:43 von ketchupfleck -
Seid ihr euch mit dem hier sicher? -> $row = mysql_fetch_assoc($ergebnis)
Das ordnet doch einen assoziativen Array aus einem SQL query einer PHPVariablen zu, sprich ich übertrage ein Ergebnis eines Querys in ein assoziatives PHPArray. Das liefert doch immer true für die while-Schleife, solange wie der Query existiert, oder täusche ich mich da?
Weil, wenn das so ist, ist klar, warum das ding endlos läuft...
€dit: Nebenbei: ist es nicht besser mysqli Befehle zu verwenden? Bei mir hab ich regelmäßig Probleme, wenn ich die alten nutze.
Beitrag zuletzt geändert: 23.9.2009 22:40:35 von alphara -
Danke für eure hilfe.
habe in letzter Zeit kaum noch mit PHP gearbeitet. deshalb sehe ich einfach den Wald vor lauter Bäumen nicht mehr
thx
Daniel -
Seid ihr euch mit dem hier sicher? -> $row = mysql_fetch_assoc($ergebnis)
mysql_fetch_assoc() gibt aber immer nur eine Zeile zurück auf deren Spalten du mit Keys zugreifen kannst. Mit der while-Schleife durchläuft man dann alle Zeilen die auf den Query passen. Wenn es keine weiteren Zeilen mehr gibt, gibt die mysql_fetch_assoc() false zurück und beendet damit die while-Schleife. -
ketchupfleck schrieb:
Seid ihr euch mit dem hier sicher? -> $row = mysql_fetch_assoc($ergebnis)
mysql_fetch_assoc() gibt aber immer nur eine Zeile zurück auf deren Spalten du mit Keys zugreifen kannst. Mit der while-Schleife durchläuft man dann alle Zeilen die auf den Query passen. Wenn es keine weiteren Zeilen mehr gibt, gibt die mysql_fetch_assoc() false zurück und beendet damit die while-Schleife.
Danke für die Info. Hab ich jetzt auch noch nicht gewusst. Man sollte die Bücher, die man so zu Hause rumliegen hat ab und zu etwas genauer lesen... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage