Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

PHP - screensize

Anoniem
None
9 antwoorden
  • ik wil in PHP de gebruikte screensize uitlezen.
    We hebben al een oplossing in combinatie met JavaScript:

    [code:1:0bc5c60b40]<script language="JavaScript">
    window.location.href = "page.php?size="+escape(screen.width);
    </script>[/code:1:0bc5c60b40]

    (redirect naar 'page.php', met de screenwidth achter het ?)

    en dan op 'page.php':

    [code:1:0bc5c60b40]<?php
    $screen = ($_GET["size"]);

    if ($screen == "800")
    {
    header ("Location: page-800.php") ;
    exit ;
    }
    ?>[/code:1:0bc5c60b40]

    maken we een extra redirect voor een 800x600 scherm, in alle andere gevallen wordt de code op deze pagina gebruikt. Er moet nog wat foutcontrole en zo bij (andere schermafmetingen etc.), maar het principe werkt.

    Maar: Hiermee gebruiken we in het slechtste geval 2x een redirect, en dat is toch wat overkill. Weet iemand een directere manier, bij voorkeur helemaal in PHP (of een eenvoudigere manier om de waarde uit het JavaScript naar PHP over te brengen?

    roeland

    ===================================
    LINUX is like an indian tipi:
    no windows, no gates and apache inside
  • Laat je javascriptje meteen naar de 800x600 pagina linken:

    [code:1:4b72cca854]
    if ( screen.width == 800 )
    { location = "index800.html" }
    else
    { … }

    [/code:1:4b72cca854]

    ja, ik weet dat de syntax slordig is, maar het idee is duidelijk
  • [quote:182c6fb5f1="eNaRGy"]Laat je javascriptje meteen naar de 800x600 pagina linken:
    [/quote:182c6fb5f1]

    Ja, ok. Dat is natuurlijk de snelste oplossing, maar ik wil die waarde in PHP verder kunnen gebruiken. In principe zoek ik dus een oplossing zonder JavaScript.

    ;-))
  • [quote:cca250aec0]In principe zoek ik dus een oplossing zonder JavaScript. [/quote:cca250aec0]
    Toch zul je iets moeten verzinnen om de schermgrootte van de client-side (JavaScript) naar de server-side (PHP) te krijgen.
    Als je op page.php die variabele "size" opslaat in een sessie-variable o.i.d. kun je het vandaar verder met alleen PHP.
  • [quote:6a2a79ce16]
    Als je op page.php die variabele "size" opslaat in een sessie-variable o.i.d. kun je het vandaar verder met alleen PHP.[/quote:6a2a79ce16]

    Misschien heb ik het "probleem" niet helemaal duidelijk uitgelegd.

    Wat ik zoek is een oplossing die de hele JavaScript oplossing overslaat.

    Ik wil dus eigenlijk de screensize direct via PHP kunnen afleiden.
  • [quote:f6f75294a9="roelandvbb"]Ik wil dus eigenlijk de screensize direct via PHP kunnen afleiden.[/quote:f6f75294a9]PHP is server-side, en kan dus *niets* van de client uitlezen (behalve wat deze zelf meestuurt). Wat jij wilt is dus onmogelijk.
  • Lijkt mij onmogelijk wat je wilt maar dit kan misschien helpen.
    Plaats dit in de index.html
    [code:1:5e802e36c1]
    <script language="JavaScript">
    location = "http://jouwlocatie.jou/doeiets.php?size="+screen.width
    </script>
    [/code:1:5e802e36c1]
  • Je zou ipv de tweede redirect een include van het bestand kunnen overwegen, dat scheelt er eentje.
    Zonder de hulp van een client-side scriptje ga je het in ieder geval niet voor elkaar krijgen.
  • Iedereen bedankt voor de suggesties.

    Ik denk dat we er zo wel uit komen.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.