Bildsortierung

ruepi

Grünschnabel
hallo alle miteinander
ich habe da ein kleines problem. und zwar habe ich ne db erstellt welche bilder enthält. nun ist es so dass ich die bilder sortieren möchte und zwar so dass immer 4 nebeneinander sind und die nächsten 4 bilder unten angeschlossen. etwa so:

bild1, bild2 bild3, bild4

bild5, bild6 usw....

kann mir da jemand helfen

liebe grüsse rupi
 
Ich habe da mal vor längerem ein Tut geschrieben. Ich denke, das ist, was Du suchst.

Im Repeat-Bereich sollen die Datensätze wie folgt dargestellt werden

a|b|c|
e|f|g|
h|i|j|

also 3 Spalten in einer Zeile oder

a|b|c|d|e|
f|g|h|i|j|
k|l|

5 Spalten in einer Zeile.

Um folgendes auch Testen zu können, müsst Ihr 5 Dinge tun:

1. Code in eine leere Seite kopieren
2. Eure Verbindung in objConn aktualisieren (sh. Punkt 1)
3. im SQL des Recordsets den Namen und die Felder Eurer Tabelle ergänzen (sh. Punkt 2)
4. Der Variablen AnzahlSpalten die Anzahl der gewünschten Spalten, die in einer Zeile vorkommen sollen, hier wurde 5 angegben, zuweisen (Punkt 3)
5. In der Schleife das Feld rs("Feld1") durch Euer Feld der Tabelle austauschen (sh. Punkt 4)

---- Code Anfang ----

<%@LANGUAGE="VBSCRIPT" %>
<% option explicit %>
<%

dim objConn
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "DSN=DeineVerbindung" 'Punkt 1

with response
.write "<html><head><title>Spaltenanzahl dynamisch erstellen</title></head>"
.write "<body>"

Dim RS, sql
sql = "select [Feld1] from [Tabelle] " 'Punkt 2
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open sql, objConn

' --- Hier wird in der Variablen die Spaltenanzahl eingefügt

Dim AnzahlSpalten, spalte
AnzahlSpalten = 5 'Punkt 3
spalte=-1
.write "<table>"

' --- Schleife öffnen und errechnen der nötigen Zeilen

Do while not rs.eof
spalte = (spalte+1) mod AnzahlSpalten
if spalte=0 then response.write "<tr>"

' --- Daten schreiben

.write "<td style=""border:1px solid #666699"">" & rs("Feld1") & "</td>" 'Punkt 4

' --- Abschließen der Zeile, wenn alle gefüllt sind

if spalte=AnzahlSpalten-1 then response.write "</tr>"
rs.moveNext
Loop

' --- Schleife Schleißen und
' --- letzte Zeile füllen, falls die Anzahl der Datensätze für die
' --- letzte Zeile weniger als als AzahlSpalten betragen
' --- So wird die Tabelle korrekt geschlossen.

Dim i
For i = spalte+1 to AnzahlSpalten-1
.write "<td>&nbsp;</td>"
if i=AnzahlSpalten-1 then response.write "</tr>"
next
.write "</table>"
.write "</body></html>"
end with

' --- Recordset schließen

RS.Close
Set RS = Nothing

' -- Verbindung schließen

objConn.close
set objConn = Nothing
%>

----code ende----
 
response.redirect

danke für die antwort. ich habs zwar noch nicht ausprobiert, aber so sollte es funktionieren.
hab aber noch eine andere frage. kann ich 2 frame gleichzeitig ohne js mittels asp ansteuern? es geht um nen response.redirect, aber da kann ich ja nicht mit targets arbeiten? gibts da noch ne andere lösung

liebe grüsse rupi
 

Neue Beiträge

Zurück