eine auslesung der while schleife im Limit nicht zählen
Hoi
Hab ein Problem...
Ich habe ein script geschrieben das mir pro zeile 4 mal die datenbank ausliest...
Jedoch möchte ich mit einschränkungen arbeite, quasie das manche Bilder nur für admins angezeigt werden. Jedoch hab ich das Problen das die spalte für das bild einfach nicht da ist, quasie nur 3 bilder in einer spalte angezeigt werden statt 4.
Gibt es einen Command mit dem ich Mysql mitteile... das er die ausgabe einer while schleife nicht zählen soll? Aber ich brauche zuvor die information aus der spalte... um bestimmen zu können ob sie gezählt werden soll für das LIMIT 4 oder nicht...
Gibt es da eine funktion?
Hab ein Problem...
Ich habe ein script geschrieben das mir pro zeile 4 mal die datenbank ausliest...
Jedoch möchte ich mit einschränkungen arbeite, quasie das manche Bilder nur für admins angezeigt werden. Jedoch hab ich das Problen das die spalte für das bild einfach nicht da ist, quasie nur 3 bilder in einer spalte angezeigt werden statt 4.
Gibt es einen Command mit dem ich Mysql mitteile... das er die ausgabe einer while schleife nicht zählen soll? Aber ich brauche zuvor die information aus der spalte... um bestimmen zu können ob sie gezählt werden soll für das LIMIT 4 oder nicht...
Gibt es da eine funktion?
versuch mal hinter limit ein start und ein ende wert zu setzen
quasi LIMIT 1,4
quasi LIMIT 1,4
Mein kleines Projekt
-Cruel Online-
-Cruel Online-
Wie sieht denn dein Abbruchkriterium aus?
Denk dran, das wenn du z.B.
nur 3 mal durchlaufen wird. Wenn sie 4 mal durchlaufen werden soll, musst du es so machen:
In solchen Sachen hilft immer der Quellcode weiter
Denk dran, das wenn du z.B.
|
|
PHP-Quelltext |
1 2 |
$i = 0;
while($i < 4) ...
|
nur 3 mal durchlaufen wird. Wenn sie 4 mal durchlaufen werden soll, musst du es so machen:
|
|
PHP-Quelltext |
1 2 |
$i = 0;
while($i <= 4) ...
|
In solchen Sachen hilft immer der Quellcode weiter
Ihr seit ja richtig taff... schnelle antworten hier 
Hier mal meine for schleife...
Indem ich $rank auslese und mit dem Benutzerlevel vergleiche.. (Eventuell angemeldeter Admin, Users Mods u.s.w) in der Zeile wo folgender Kommentar steht:
//Suche nach einschreankungen der zugriffsrechte
Das mit <= 4 wird hier nicht funzn... würde ebenfalls nur drei auslesen und den 4 einfach nicht anzeigen weil $showpic nicht true ist.. da das bild für normale user nicht angezeigt werden darf...
Ich arbeite bereits mit den 2. Angaben für Limit... um eine seitenzahl hinzuzufügen...
hab das script auch schon online... www.virtoreal.net/Pictures
EDIT:
Hab festgestellt... das ich das damals anders geregelt hab... Mysql liest ja die zeile 4 mal aus... und nicht die for schleife xD
Nun müsste ich im nachhinein, wenn bereits der query ausgelesen wurde nochmal den limit von 4 auf 5 setzen, falls ein bild dabei ist das nicht angezeigt werden soll.. aber das geht ja nicht oder? also müsste ich vorheer nochmal alles sammeln... was aber total umständlich und schlecht zu machen ist...
Gibt nicht einfach irgendeine möglichkeit mit css... das man so boxen anlegt... wie tabellen die sich einfach vom platzangebot dorthinschieben wie man es braucht? wie bei google bilder? nur das is irgendwie java... und funzt net in jedem browser...
grml...
EDIT:
Ich hab des rätzels lösung... ich pack die bilder einfach in eine div box... lass die tabellen weg.. das text floating macht für mich den rest... selfhtml.net hat mal wieder geholfen...
dieses beispiel werde ich etwas umbaun
wuhahaha

Hier mal meine for schleife...
|
|
PHP-Quelltext |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
for ($i = $pics; $i<=16+$pocs; $i=$i+4) {
print "<tr>";
//Hohle Infos aus der Datenbank und lese 4 Eintaege aus
//Lese von anfang an aus
if ($i == 1) {
if (empty($picpfad)) {
$query = "SELECT * FROM Pictures ORDER BY upload DESC LIMIT 0,4";
} else {
$query = "SELECT * FROM Pictures WHERE path = '{$picpfad}' ORDER BY upload DESC LIMIT 0,4";
}
} else {
//Gleiche den ausgleich aus
$d = $i-1;
if (empty($picpfad)) {
$query = "SELECT * FROM Pictures ORDER BY upload DESC LIMIT $d,4";
} else {
$query = "SELECT * FROM Pictures WHERE path = '{$picpfad}' ORDER BY upload DESC LIMIT $d,4";
}
}
$sql = mysql_query($query);
while($ds = mysql_fetch_object($sql)) {
$id = $ds->id;
$title = $ds->title;
$image = $ds->image;
$comment = $ds->comment;
$loc = $ds->loc;
$path = $ds->path;
$upload = $ds->upload;
$uploader = $ds->uploader;
$rank = $ds->level;
//Suche nach einschreankungen der zugriffsrechte
if ($rank == 3 AND $ranklevel == 3) $showpic = 2;
if ($rank == 2 AND $ranklevel == 2) $showpic = 2;
if ($rank == 1 AND $ranklevel == 1) $showpic = 2;
if (empty($rank)) $showpic = 1;
echo "Rank: $rank | showpic:$showpic |ranklevel:$ranklevel|Monkey:$<br>";
if ($showpic) {
print "<td align=\"center\">";
//Aendere den Rahmen wenn Bild eingeschraenkt wurde
if ($showpic == 2) echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-width:medium; border-color:#42B6F4; border-style:dashed; padding:5px; margin:5px;\">";
else echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-width:medium; border-color:#ffffff; border-style:dashed; padding:5px; margin:5px;\">";
//Zeichne den Rest der Struktur
if (!empty($title)) echo "<tr><td align=\"center\"><strong>$title</strong></td></tr>";
print "<tr><td align=\"center\"><a href=\"Pic.php?id=$id&site=$site&underloc=$underloc&pfad=$pfad\"><img width=\"150\" src=\"../Images/Thumbnails/NAIL_$image\" border=\"0\"></a></td></tr>";
if (!empty($comment)) echo "<tr><td align=\"center\"><em>$comment</em></td></tr>";
print "</table>
</td>";
}
unset($showpic);
}
}
|
Indem ich $rank auslese und mit dem Benutzerlevel vergleiche.. (Eventuell angemeldeter Admin, Users Mods u.s.w) in der Zeile wo folgender Kommentar steht:
//Suche nach einschreankungen der zugriffsrechte
Das mit <= 4 wird hier nicht funzn... würde ebenfalls nur drei auslesen und den 4 einfach nicht anzeigen weil $showpic nicht true ist.. da das bild für normale user nicht angezeigt werden darf...
Ich arbeite bereits mit den 2. Angaben für Limit... um eine seitenzahl hinzuzufügen...
hab das script auch schon online... www.virtoreal.net/Pictures
EDIT:
Hab festgestellt... das ich das damals anders geregelt hab... Mysql liest ja die zeile 4 mal aus... und nicht die for schleife xD
Nun müsste ich im nachhinein, wenn bereits der query ausgelesen wurde nochmal den limit von 4 auf 5 setzen, falls ein bild dabei ist das nicht angezeigt werden soll.. aber das geht ja nicht oder? also müsste ich vorheer nochmal alles sammeln... was aber total umständlich und schlecht zu machen ist...
Gibt nicht einfach irgendeine möglichkeit mit css... das man so boxen anlegt... wie tabellen die sich einfach vom platzangebot dorthinschieben wie man es braucht? wie bei google bilder? nur das is irgendwie java... und funzt net in jedem browser...
grml...
EDIT:
Ich hab des rätzels lösung... ich pack die bilder einfach in eine div box... lass die tabellen weg.. das text floating macht für mich den rest... selfhtml.net hat mal wieder geholfen...
dieses beispiel werde ich etwas umbaun

|
|
PHP-Quelltext |
1 2 3 4 5 |
<div style="float:left; margin-right:20px; margin-bottom:20px;
border:solid 1px red; text-align:center">
Kapitel<br>
<span style="font-family:Algerian,serif; font-size:72pt; color:red">
1 </span></div>
|
wuhahaha
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »UT2003ler« (30. November 2007, 16:09)


