Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]detekcja javascript i flash
shreker
post
Post #1





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

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


Witam, mam problem ze skryptem detekcji javascript i flash. W Firefoxie i Operze działa bez problemów natomiast po uruchomieniu w IE pokazuje cały czas że strona jest ładowana (przy okazji blokując inne skrypty javascript). Gdzie jest problem.

  1. class getFlashJSInfo
  2. {
  3. private $isCookiePut;
  4.  
  5. function printFlashHTML()
  6. {
  7. echo '<OBJECT CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" CODEBASE="http://active.macromedia.com/flash/cabs/swflash.cab#version=3,0,0,11" WIDTH="1" HEIGHT="1" NAME="sw" ID="sw">
  8. <PARAM NAME="quality" VALUE="high">
  9. <PARAM NAME="Loop" VALUE="true">
  10. <PARAM NAME="play" VALUE="true">
  11. <script language="JavaScript">
  12. '.$this->printJSCookieCreator().'
  13. if (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"])
  14. {
  15. createCookie(\'isFlash\', \'yes\', \'100\');
  16. }
  17. else
  18. {
  19. createCookie(\'isFlash\', \'no\', \'100\');
  20. }
  21. </script>
  22. </OBJECT>';
  23. $this->isCookiePut = true;
  24. }
  25.  
  26. function checkJavaFlashCookie()
  27. {
  28. if(!isset($_COOKIE['isFlash']))
  29. $_COOKIE['isFlash'] = '';
  30. if($this->isCookiePut == false)
  31. {
  32. echo $this->printJSCookieCreator();
  33. }
  34. return ($_COOKIE['isFlash'] == 'yes');
  35. }
  36.  
  37. function printJSCookieCreator()
  38. {
  39. return 'function createCookie(name,value,days)
  40. {
  41. if (days)
  42. {
  43. var date = new Date();
  44. date.setTime(date.getTime()+(days*24*60*60*1000));
  45. var expires = "; expires="+date.toGMTString();
  46. }
  47. else var expires = "";
  48. document.cookie = name+"="+value+expires+"; path=/";
  49. }';
  50. }
  51. }
  52.  
  53. $userInfo = new getFlashJSInfo();
  54. $userInfo->printFlashHTML();
  55. $cookie = $userInfo->checkJavaFlashCookie();
  56. // check for javascript
  57. if($cookie == null)
  58. {
  59. echo 'no js';
  60. }
  61. else
  62. {
  63. echo 'js ok';
  64. }
  65. // check for flash
  66. switch ($cookie)
  67. {
  68. case true:
  69. echo 'flash ok';
  70. break;
  71. case false:
  72. echo 'no flash';
  73. break;
  74. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Niktoś
post
Post #2





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Dziwie się ,że to wogóle działa,taki mix języków jest rzadko spotykany.
Go to the top of the page
+Quote Post
--shreker--
post
Post #3





Goście







może i mix, ale ważne że działa, jedynie przy IE jest problem. da sie to poprawić czy nie ?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 15:49