• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tabellen-Länge bestimmen?

Badtrix

Neues Mitglied
Hallo

In meiner Page habe ich ein iframe von einer bestimmten Grösse. In diesem Frame sollen Blog-Einträge (in einer Tabelle) dargestellt werden. Diese Tabelle hat die Höhe und Breite des iFrames.
Die Einträge werden aus einer Datenbank ausgelesen, sprich die Tabelle wird dynamisch generiert. Falls nun aber mehr Einträge vorhanden sind als in der Tabelle mit vorgegebener Grösse dargestellt werden können, verzieht es mir ja das iFrame, was die gesamte Website auseinander reisst. Mein Problem ist also folgendes: Es sollen jeweils nur soviele Einträge dargestellt werden, wie in der Tabelle dargestellt werden können. Die restlichen Einträge sollen dann auf weiteren Seiten ausgegeben werden. Wie kann ich aber bestimmen, ob ein Eintrag noch noch Platz hat oder ob er bereits auf die nächste Seite gehört? Gibt es eine Möglichkeit die Höhe/Länge der Tabelle fortlaufend zu bestimmen, und sobald ein Grenzwert erreicht wird die nachfolgenden Einträge auf einer anderen Seite darzustellen (HTML, PHP, Javascript)? Da die einzelnen Einträge unterschiedlich lang sind, und teilweise auch Videos oder Fotos beinhalten, kann ich nicht einfach sagen, dass nach x Einträgen eine neue Seite generiert werden soll.

Ich hoffe, ich konnte mein Problem klar erläutern.

Danke schonmal für die Hilfe
 
Die Größe des Inlineframes passt sich an die Größe des Inhalts an? Das habe ich ja noch nie gehört.

Sind deine Blogeinträge tabellarische Daten (Messwerte, Fußballtabelle, …)? Falls nein, solltest du keine Tabelle zur Darstellung verwenden.

Wieso nutzt du überhaupt den Umweg über den Inlineframe?

Als Antwort auf deine Frage: Das geht wenn überhaupt nur per JavaScript (da die tatsächlichen Maße, die ein Client rendert, erst dann halbwegs sicher bestimmt werden können), ist aber ziemlich kompliziert und vermutlich extrem fehleranfällig.
 
Naja, ich bin mal davon ausgegangen dass das so ist :)

Vielleicht hab ich mich falsch ausgedrückt mit der Tabelle. Es handelt sich um den Blog meiner Band. Die Tabelle selbst ist nicht sichbar, aber ich hab ne Zeile für den Titel, eine Zeile für das Datum und eine Zeile für den Text/Clip/Bild.

Wenn du dir mal ein Bild davon machen willst: Fabi Ann
Dieser Eintrag ist nur provisorisch, im Moment steckt noch keine DB dahinter, ist alles nur um das Design zu entwerfen etc.

Gibt es denn eine andere Möglichkeit, um den Blog dynamisch zu machen und auf mehrere Seiten aufzuteilen? Ich möchte wenns geht auf einen Scrollbar verzichten, da der iwie nicht so gut reinpasst.
 
Wenn die Inhalte bereits aus einer DB ausgelesen werden die noch dazu auf dem selben Server liegt, brauchst Du die Inhalte nicht per iframe einbinden. Binde sie direkt in die Seite ein. Dazu musst Du jedoch zum Einen alle Dateien zu PHP-Dateien machen, zum Anderen natürlich die PHP-Programmierung in deine Webseite integrieren. Dann hast Du auch keine Probleme mit iframes.
 
Ich arbeite bereits mit PHP, sämtliche Seiten sind PHP-Dateien. Das iFrame brauch ich wegen dem MP3-Player. Der soll nicht jedesmal neu gestartet werden wenn eine andere Seite aufgerufen wird. Deswegen werden die Daten wie Blog, Music, Clips, Pics etc. im iFrame angezeigt. Zudem sollte sich so ja auch die Ladezeit verringern, da nicht jedesmal sämtliche Grafiken neu geladen werden müssen. Ich ändere lediglich die betroffenen Bilder (bei Klick auf Bio, Clips etc.) mittels onClick event und JS-Funktionen. Und das Problem mit dem Darstellen des Blogs bleibt ja trotzdem bestehen, sonst müsste ich ja im voraus definieren, welche Blogeinträge auf welcher Seite dargestellt werden sollen? Bei zB Pics ist das nicht das Problem, da ich jeweils 4 Gallerien pro Seite darstelle (die Gallerie-Vorschau ist ja pro Gallerie immer gleich gross), da lässt sich das Problem mit mehreren Seiten einfach beheben. Aber bei unterschiedlicher Grösse der einzelnen Einträge im Blog klappt das leider nicht, dass ich zB sage dass pro Seite nur 5 Einträge dargestellt werden sollen. Aber ev. werd ich halt einfach mit nem Scrollbalken im iFrame leben müssen, ist wohl am einfachsten zu programmieren.
Um mal zu zeigen was ich mit mehreren Seiten meine: page.jpg
Unten rechts siehst du "1/3", sprich wenn man dort auf den Pfeil nach rechts klickt kommt dann "2/3", also die zweite Seite mit den Blogeinträgen etc. Das wäre jedenfalls das Ziel :)

Danke jedenfalls schonmal für deine Mühen
 
Du könntest die Inhalte auch Alternativ per AJAX laden. Dann hast Du kein Scrollbalkenproblem und kannst auch eine seitenweise Anzeige integrieren.

Ein iframe ist imho keine Lösung um Hintergrundmusik dauerhaft, auch bei Seitenwechsel, abzuspielen. Dafür wäre eher ein Frameset, JavaScript oder Flash geeignet.
 
Zurück
Oben