Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> warunek dla roznych przegladarek?
Volume
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 11
Dołączył: 11.10.2004
Skąd: 3c

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


Wiem, ze mozna rozpoznac pzregladarke zmienna srodowiskowa $HTTP_USER_AGENT ale czy jest mozliwe zrobic warunek, ktory bedzie przyporzadkowywal odpowiedniej przegladarce odpowiednia tresc?

Chodzi mi aby np. ppp1.png obrazek wczytywaly tylko mozille a np. ppp2.png tylko opery czy IE - jest to mozliwe w php?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Skoro wiesz jak rozpoznać przeglądarke więc wczym problem?
  1. <?php
  2.  
  3. $obrazek=&#092;"default.png\";
  4. if ($jestIE) $obrazek=&#092;"ie.png\";
  5. elseif($jestOPERA) $obrazek=&#092;"opera.png\";
  6. elseif.....
  7. .......
  8. //zmienne $jestIE,... sam se wylicz bo mowisz ze wiesz jak
  9.  
  10. ?>
Go to the top of the page
+Quote Post
Volume
post
Post #3





Grupa: Zarejestrowani
Postów: 283
Pomógł: 11
Dołączył: 11.10.2004
Skąd: 3c

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


hmm
probowalem to np. tak zrobic:
  1. <?php
  2.  
  3. $jestIE='Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)';
  4.  
  5. if($jestIE==$HTTP_USER_AGENT)
  6. {
  7. echo 'to jest IE 5.0 pod win98';
  8. }
  9.  
  10. ?>

I tylko takie rowiazanie przyszlo mi teraz do glowy - ale ono jak widac jest malo uniwersalne, bo wystarczy ze ktos bedzie mial inny system czy inna wersje pzregladarki i juz lipa... Czyli musialbym w takiej sytuacji napisac wszystkie mozliwosci - a mi chodzi ogolnie zeby tylko uwzgledniac przegladarke - myslalem, zeby odpowiednie czesci jakos powicinac i wtedy porownac ale to raczej nie tak sie powinno robic... I to jest moj problem..
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




  1. <?php
  2. if (preg_match(&#8221;/MSIE/i”,$_SERVER[HTTP_USER_AGENT])) { $isIE = 1;
  3. } else { $isIE = 0;
  4. }
  5. ?>
Go to the top of the page
+Quote Post
bregovic
post
Post #5





Grupa: Zarejestrowani
Postów: 562
Pomógł: 15
Dołączył: 8.08.2003
Skąd: Denmark/Odense

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


a) Używaj $_SERVER
(IMG:http://forum.php.pl/style_emoticons/default/cool.gif) Uzależnianie całej zawartości strony od HTTP_USER_AGENT nie jest dobrym pomysłem - teoretycznie każdy użytkownik może sobie tą zmienną zmienić - np w IE zdaje się za pomocą Rejestru, a w Operze i Firefoxie możesz sobie spokojenie ustawić zmienną HTTP_USER_AGENT na "Jasio" za pomocą opcji lub rozszerzeń.
Go to the top of the page
+Quote Post
Volume
post
Post #6





Grupa: Zarejestrowani
Postów: 283
Pomógł: 11
Dołączył: 11.10.2004
Skąd: 3c

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


dziekie nospor, wlasnie o to chodzilo, nawet nie sadzilem, ze to moze byc takie proste i tak przydatne.

bregovic, a czy sa do tego jakies lepsze rozwiazania?

i jeszcze taki maly OT, dlaczego w informacji wg tej zmiennej $HTTP_USER_AGENT IE jest identyfikowany rowniez jako Mozilla? Wiem, ze jest jeszcze jeden znaczacy 'wyraz' - Gecko i tego sie póki co trzymam.
Go to the top of the page
+Quote Post
Zajec
post
Post #7





Grupa: Zarejestrowani
Postów: 1 086
Pomógł: 8
Dołączył: 10.12.2003

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


User-agentów masz kilka(naście?) tysięcy. Będziesz miał kłopot, żeby je wszystie obsłużyć.

Poza tym użytkownicy Opery, Firefoksa i Konqueror mogą bez kłopotu zmieniać jego ciąg. I to bardzo prosto: choćby F12 w Operze.

Najbezpieczniejsza metoda:

Kod
<!--[if IE]> tutaj kod widoczny tylko dla IE <![endif]-->


Ten post edytował Zajec 15.05.2005, 22:34:05
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: 23.12.2025 - 18:41