Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP]Rozdzielczość ekranu
Forum PHP.pl > Forum > Przedszkole
msm
Witam, szukam sposobu na pobranie rozdzielczości ekranu i zapisanie jej jako zmiennej w php bez get.
Metoda get jest mało elegancka i powoduje problemy kiedy klient wchodzi na stronę z linku zaindeksowanego przez google.
Teraz mam tak
  1. if(!isset($_GET['r']))
  2. {
  3. echo "<script language=\"JavaScript\">
  4. <!--
  5. document.location=\"$PHP_SELF?r=1&width=\"+screen.width+\"&Height=\"+screen.height;
  6. //-->
  7. </script>";
  8. }

  1. $wi = $_GET['width'] ;
  2. $he = $_GET['Height'] ;

bpskiba
Cytat(msm @ 4.05.2012, 14:31:56 ) *
Witam, szukam sposobu na pobranie rozdzielczości ekranu i zapisanie jej jako zmiennej w php bez get.
Metoda get jest mało elegancka i powoduje problemy kiedy klient wchodzi na stronę z linku zaindeksowanego przez google.
Teraz mam tak
  1. if(!isset($_GET['r']))
  2. {
  3. echo "<script language=\"JavaScript\">
  4. <!--
  5. document.location=\"$PHP_SELF?r=1&width=\"+screen.width+\"&Height=\"+screen.height;
  6. //-->
  7. </script>";
  8. }

  1. $wi = $_GET['width'] ;
  2. $he = $_GET['Height'] ;

Można to zrobić np.tak
  1. <script LANGUAGE="JavaScript" TYPE="text/javascript">
  2. function a(){
  3. document.getElementById("ro").value=screen.width;
  4. }
  5. <form action="#" method="post" onsubmit="a();">
  6. <input type="hidden" id="ro">
  7. <input type="submit" value="wyślij">
  8. </form>

Pisane z palca...

Mam jednak wrażenie, że brniesz w ślepy zaułek. Radzę poczytać dokładniej o css. Często wystarczy podawać rozmiar elementu w procentach, a nie pixelach. Do tego z pomocą javascript można to załatwić po stronie klienta
msm
Dziękuje za odpowiedź.
Przetestuje ten sposób.
Tymczasem zrobiłem tak
  1. <script type="text/javascript">
  2. document.cookie = 'width=' +screen.width;
  3. document.cookie = 'height=' +screen.height;


  1.  
  2. $wi = $_COOKIE['width'];
  3. $he = $_COOKIE['height'];
  4. if ($wi == null) {header("Refresh: 0;");}

Przy pierwszym otwarciu strony w przeglądarce zmienne $wi i $he są puste, po czym odświeżam stronę. Czy takie rozwiązanie jest do przyjęcia?

msm
wNogachSpisz
No i teraz bedziesz to przesylal przy kazdym odswiezeniu strony marnujac transfer (tak dziala cookie), lepiej raz POST'em i miec z glowy (post nie bedzie sie cachowal, nie bedzie go w logach apacha i ogolnie POST jest wlasnie do takich rzeczy).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.