Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: priorytet wyświetleń
Forum PHP.pl > Forum > Przedszkole
bronx
witam

mam użyty taki rotator banerów:

  1. <?php
  2.  
  3.  
  4. $banery = file(&#092;"rotator/banery.php\"); 
  5.  
  6. srand ((float)microtime()*1000000); 
  7. shuffle($banery); 
  8. for($i=0;$i<1;$i++) { 
  9. list($url,$title,$baner,$type,$width,$height) = explode('*|*', $banery[$i]);  
  10.  
  11.  if ( $type == &#092;"application/x-shockwave-flash\" )
  12.  
  13. {
  14.  
  15. echo &#092;"<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" class=\"banner\"
  16. codebase=&#092;"http://active.macromedia.com/flash4/cabs/swflash.cab#version=4,0,0,0\"
  17. id=&#092;"$baner\" width=\"300\" height=\"38\">
  18. <param name=&#092;"movie\" value=\"rotator/gfx/$baner\">
  19. <param name=&#092;"quality\" value=\"high\">
  20. <embed name=&#092;"$baner\" src=\"rotator/gfx/$baner\" quality=\"high\"
  21. width=&#092;"$width\" height=\"$height\"
  22. type=&#092;"application/x-shockwave-flash\"
  23. pluginspage=&#092;"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\">
  24. </embed>
  25. </object>&#092;";
  26.  
  27. }
  28.  
  29. else
  30.  
  31. {
  32.  
  33. echo '<a href=\"'.$url.'\" target=\"_blank\" title=\"'.$title.'\"><img
  34.  src=\"rotator/gfx/'.$baner.'\" border=1 align=right width=340 height=38></a>'; 
  35.  
  36. }
  37.  
  38. }
  39.  
  40.  
  41. ?>


ale przy dodawaniu chciałbym ustawiać priorytet wyświetleń (wysoki, normalny, niski) i nie mam pojęcia jak to zrobić...

wie ktoś może jak sobie z tym poradzić ?
scanner
A jak ten priorytet ma wpływac na częstość wyświetleń?

Ludzie.. piszcie konkretnie, a nie "chce mieć samochód.. doradźcie jaki kolor"...
rogrog
naprościej zrobić tak że jeśli jest banner o wyższym priorytecie to dodajesz go kilkakrotnie do tablicy
scanner
W pierwszym odruchu: LOL
W drugim: do wieczora coś opracuję. Coś, co nie będzie miało takiej nadmiarowości danych.
bronx
Cytat(scanner @ 2004-12-09 08:58:24)
A jak ten priorytet ma wpływac na częstość wyświetleń?

Ludzie.. piszcie konkretnie, a nie "chce mieć samochód.. doradźcie jaki kolor"...

no jak to jak, jeżeli najwyższy priorytet to żeby ten baner był częściej wyświetlany niż inne, jeżeli normalny to normalnie, a jak najniższy to żeby żadko pokozaywało ten baner

Cytat
naprościej zrobić tak że jeśli jest banner o wyższym priorytecie to dodajesz go kilkakrotnie do tablicy


też o tym myślałem, ale jeżeli ustawie sobie, żeby pokazywało mi np. 5 banerów i jeden będzie wstawiony np. 3 razy w tablicy to może mi pokazać dwa takie same banery obok siebie...
scanner
Więc idea (i kropka) jest taka:

opierając się na kostce do gry, ustalamy, że:
  • Jeśli wylosowaliśmy liczbę 1 - losujemy baner z puli o najniższym priorytecie
  • Jeśli wylosowaliśmy liczbe 2 lub 3 - losujemy baner z puli o normalnym priorytecie
  • Jeśli wylosowaliśmy liczbę 4, 5 lub 6 - losujemy baner z puli o wysokim priorytecie
Możemy liczby zamienić w zakresy:

  1. <?php
  2. $iRandomized = rand(1, 100);
  3. $sPriority = 'normal';
  4. if( $iRandomized <= 10)
  5. {
  6. $sPriority = 'low';
  7. }
  8. elseif( $iRandomized > 40 )
  9. {
  10. $sPriority = 'high';
  11. }
  12. ?>


Jeśli $iRandomized zawiera się w przedziale (1 - 10) - niski (ok. 10% szans na trafienie do tej puli banerów)
(1 - 40) - normalny (ok. 30% szans na trafienie do tej puli)
(41 - 100) - wysoki (ok. 60% szans na trafienie do tej puli)

Mając określoną pulę losujemy z niej banner (lub bannery) - można wykorzystać modyfikacje mojej funkcji z tego postu.

Ktoś ma lepszy pomysł?
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.