Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]Rozdzielczość ekranu
msm
post
Post #1





Grupa: Zarejestrowani
Postów: 39
Pomógł: 2
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


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'] ;

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
bpskiba
post
Post #2





Grupa: Zarejestrowani
Postów: 340
Pomógł: 49
Dołączył: 3.07.2009
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


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

Ten post edytował bpskiba 4.05.2012, 14:01:23
Go to the top of the page
+Quote Post
msm
post
Post #3





Grupa: Zarejestrowani
Postów: 39
Pomógł: 2
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #4





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


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).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.03.2026 - 17:35