Ändra lite i ett script

PHP

4 svar · 214 visningar · startad av Pudolf

Medlem sedan juli 2000221 inlägg
Trådstart#1

Jag skulle behöva lite hjälp i att ändra en bit i pollscriptet "sympoll". Det som jag skulle vilja ändra är sättet som Procent-mätaren visas (bilden). Just nu vet jag inte riktigt hur den kalkuleras fram (se exempel), men jag skulle vilja ha det så att bilden är max 200 pixlar lång, sen om ett alternativ fått 20% av rösterna så ska bilden då vara 20% av 200px = 40px (hoppas jag...)

Så här ser kalkulationerna ut i orginalscriptet:

      /* do some quick math */
      $offset = 1;
      while(list($k,$v) = each($p['votes'])) {
         if($p['tvotes'] > 0)  {
            $p['votepcts'][$k] = round(($v / $p['tvotes']) * 100);
         } else {
            $p['votepcts'][$k] = 0;
         }
      }
      $highpct = max($p['votepcts']);

      /* print each result row */
      while(list($k,$v) = each($p['options'])) {
         if($s_resultnums == "0") {
            $rnum = $p['votepcts'][$k]."%"; 
         } else {
            $rnum = $p['votes'][$k]; 
         }

         /* get the image size in pixels */
         if($highpct > 0) {
            $imgsize = floor($p['votepcts'][$k] * (($s_width-42) / $highpct))
               + $offset;
         } else {
            $imgsize = $offset;
         }

Jag hoppas den där kodsnutten är allt som behövs, så det inte ligger nåt gömt som jag missat.

Tacksam för svar!

Medlem sedan okt. 20023 030 inlägg
#2

prova byta ut raden

$imgsize = floor($p['votepcts'][$k] * (($s_width-42) / $highpct)) + $offset;

mot

$imgsize = floor(($p['votepcts'][$k] / 100) * 200) + $offset;
Medlem sedan okt. 20023 030 inlägg
#3

Förresten, hur skriver den ut img-taggen? :q

Medlem sedan juli 2000221 inlägg
#4

Tack!! Funkar precis som jag ville!

Img-taggen skrivs ut såhär (om det var det du menade :))

$o.= "<img src=\"bar.gif\" width=\"$imgsize\" height=\"$s_barhite\" ";
$o.= "alt=\"$rnum\" border=\"0\" />
Medlem sedan okt. 20023 030 inlägg
#5

Behövs nog inte nu. Det fungerade ju. :)

295 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
146 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
153 ms — ändringar (db)