AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein PHP-Kriterium: Seitengröße überschritten?
Thema durchsuchen
Ansicht
Themen-Optionen

PHP-Kriterium: Seitengröße überschritten?

Ein Thema von Woyzeck · begonnen am 11. Jun 2009 · letzter Beitrag vom 11. Jun 2009
Antwort Antwort
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#1

PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 17:29
Hallo,

ich habe ein Problem mit der Anzeige einer PHP-Seite im Webbrowser. Und zwar werden in dieser PHP-Seite mehrere Datenbanken abgefragt und die Seite soll an einem öffentlich zugänglichen Ort mit zb. einem Beamer angezeigt werden. Sie läd sich ständig neu, so dass sich die angezeigten Einträge ständig aktualisieren.

Nun ist die Darstellung folgendermaßen gewählt:

Datenbank1 | Datenbank2 | Datenbank3
- Eintrag1 | - Eintrag1 | - Eintrag1
- Eintrag2 | - Eintrag2 | - Eintrag2
- Eintrag3 | - Eintrag3 | - Eintrag3
- Eintrag4 | - Eintrag4 | - Eintrag4


Leider wird so die Seite schnell (wenn viele Datenbankeinträge vorhanden sind) länger als das Browserfenster anzeigen kann, deswegen gibt es noch eine zweite Darstellungsvariante.

Dabei werden abwechselnd die drei Datenbankausgaben aufgerufen.
Also 30 sekunden die Einträge von Datenbank1, dann Datenbank2, dann Datenbank3.
Im Format:

Datenbank X

Eintrag1 Eintrag2 Eintrag3 Eintrag4

Eintrag5 Eintrag6 etc.


Nur ist klar, dass diese Anzeige keinen Sinn macht, wenn in jeder Datenbank nur ein, zwei Einträge vorhanden sind.

Was ich nun suche, ist ein Kriterium, nach dem meine PHP oder auch HTML-Seite (das ist in dem Fall beliebig) entscheiden kann, ob Darstellungsvariante 1 oder Darstellungsvariante 2 gewählt werden soll. Dazu müsste ja irgendwie herausgefunden werden, ob der Inhalt der Seite länger ist, als die "Höhe" des Browserfensters, welche auch variieren kann.

Ich dachte daran, irgendwie abzufragen, ob ein Scrollbalken vorhanden ist, weiß aber leider nicht wie man das umsetzen könnte.

Fällt euch dazu was ein oder hattet ihr schon einmal ein ähnliches Problem?

Mfg Woyzeck
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 17:53
Zitat von Woyzeck:
Ich dachte daran, irgendwie abzufragen, ob ein Scrollbalken vorhanden ist, weiß aber leider nicht wie man das umsetzen könnte.
In PHP? ja neee, ist klar

Du kannst einen festen wert von z.B. 10 Einträgen nehmen - wenns mehr sind werden sie einzeln dargestellt, sonst alle zusammen
  Mit Zitat antworten Zitat
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#3

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 17:57
Ist es denn irgendwie mit Java-Script möglich? Da bin ich aber leider absolut unerfahren.

Zitat:
In PHP? ja neee, ist klar
Dass das mit php nicht möglich ist, ist mir klar... ist ja ne serverseitige Sprache... Kam vielleicht in der Erläuterung des Problems falsch rüber. Im Prinzip werden die 3 Php-Seiten mit der Datenbankseite auch von einer HTML-Seite aus aufgerufen.


Zitat:
Du kannst einen festen wert von z.B. 10 Einträgen nehmen - wenns mehr sind werden sie einzeln dargestellt, sonst alle zusammen
das wäre eine Möglichkeit, allerdings ist diese halt sehr statisch und da es auch vorkommen kann, dass die Seite von einem Bildschirm/Beamer mit relativ geringer und einem mit sehr hoher Auflösung angezeigt wird, erfordert das ganze eher eine dynamische Anpassung an die auflösung bzw. die Größe des Browserfensters.
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#4

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 18:05
Wenn die Seite über einen Link erreicht werden, kannst du auf der Seite, die den Link beinhaltet, die Größe als Parameter mit übergeben

Dazu gestaltest du den Link in der Form target.php?screensize=PLATZHALTER oder so.

Per javascript ersetzt du dann PLATZHALTER mit screen.Width und screen.Height bzw. screen.availWidth und screen.availHeight. Dein PHP-Skript bekommt dann die Auflösung (zwar nicht die Browserfläche aber besser als nix) als Parameter und du kannst entsprechend darauf reagieren. Natürlich musst du noch den Fall abfangen, dass der Aufruf des Javascripts fehlschlägt
  Mit Zitat antworten Zitat
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#5

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 18:12
also wie gesagt, javascript=absolutes neuland

ich werde mich da grad mal schlau machen, mal sehen was ich finde... Aber trotzdem schon mal danke für die schnelle Hilfe
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#6

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 18:23
Ungetestet... Aber als Basis
Code:
function retrievesize() {
  var source;
  source = document.body.innerHTML;
  source = source.replace('__WIDTH__', screen.availWidth);
  source = source.replace('__HEIGHT__', screen.availHeight);
  document.body.innerHTML = source;
}
Der Link müsste dann so aussehen:
Code:
target.php?width=__WIDTH__&height=__HEIGHT__
__WIDTH__ und __HEIGHT__ darf natürlich sonst nirgends auf der Seite vorkommen, sonst gibts unerwünschte Seiteneffekte

Im body-onload kannst du die Funktion aufrufen.
  Mit Zitat antworten Zitat
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#7

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 18:54
Ok... ich sollte noch häufiger im Forum nach antworten schauen. Das probier ich gleich als nächstes.

Ich hab grade nochmal den Scrollbalken-Gedanken aufgegriffen. Hab da bei javascript auch was zu gefunden.

echo"<script type='text/javascript'>
if (window.scrollbars==true){
window.location.href='Adresse der Wechselseite'}
</script>";



Wenn ich PHP richtig verstanden habe sendet dieser Code die Tags mit, so dass der Browser beim Client diese Interpretiert.

Aber wieso funktioniert das dann nicht?

So bleibt er bei der Ursprungs-php, obwohl der Browser einen Scrollbalken hat.
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#8

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 19:04
Is sowieso ne dumme Idee... man macht das Browserfenster kleiner und bumms... wird man umgeleitet

Außerdem wird erst die ganze Seite geladen, um dann festzustellen, dass zu viel geladen wurde, um dann nochmal einen Teil davon auf einer neuen Seite zu laden. Nene...
  Mit Zitat antworten Zitat
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#9

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 19:06
mmh, jetzt dachte ich grade ich hätte meinen eigenen Fehler gefunden und habe die Bedingung durch

window.scrollbars.visible==true

ersetzt.

Allerdings ruft er jetzt nur noch die Wechselseiten auf, obwohl der Browser keine Scrollbars hat.


Zitat:
Is sowieso ne dumme Idee... man macht das Browserfenster kleiner und bumms... wird man umgeleitet
Das ist in meinem Fall gar nicht so schlimm, da niemand das Browserfenster größer oder kleiner macht. Das ganze wird ja an einem öffentlichen Ort einfach angezeigt. Da sitzt keiner vorm Rechner und spielt mit den Fenstergrößen rum. Das Browserfenster ist imm Vollbildmodus.


Zitat:
Außerdem wird erst die ganze Seite geladen, um dann festzustellen, dass zu viel geladen wurde, um dann nochmal einen Teil davon auf einer neuen Seite zu laden. Nene...
Das ist dagegen schon eher störend, weil für nen kleinen Moment die falsche Anzeige zu sehen ist.
  Mit Zitat antworten Zitat
Woyzeck

Registriert seit: 9. Jun 2009
60 Beiträge
 
#10

Re: PHP-Kriterium: Seitengröße überschritten?

  Alt 11. Jun 2009, 19:35
Jetzt les ich grade, dass bei Safari und Mozilla bei dieser Eigenschaft nicht zwischen true und false unterschieden wird. Also probier ich das ganze mit dem IE, dort wechselt er aber trotz Scrollbalken nicht auf die Wechselseite. Irgendwas stimmt mit diesem Codeschnipsel also nicht.

Weiß jemand was?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz