Autor Zpráva
Generation
Profil *
Dobrý den,
prosím o pomoc s úpravou následujícího stránkování, snažím se přidat šipky vpřed a vzad. Tzn. klik na šipku vpřed posune se o jednu stránku a naopak.

Script:
 function interpreti($strana=1, $pocet=1)
    {
        if ($strana < 1)
        {
            $strana = 1;
        }
        if ($pocet < 1)
        {
            $pocet = 1;
        }
        $offset = (($strana*$pocet)-$pocet);
        
        $where = '';
        
        if (isset($_GET['region']))
        {
            $where = 'WHERE region = "'.$_GET['region'].'"';
        }
        
        $pole = $this->db('SELECT * FROM interprets '.$where.' ORDER BY name ASC LIMIT '.$pocet.' OFFSET '.$offset);
        
        for ($i=0; $i<count($pole); $i++)
        {   
            $interpret = $pole[$i];
            echo'<div class="card-left">';
            echo '<a href="'.$this->domena.'?interpret='.$interpret['id'].'"><img class="alba" alt="'.$interpret['name'].'" width="120" height="120" src="images/'.$interpret['id'].'.png">';
            echo '<p class="card-photo">'.$interpret['name'].'</p></a>';
            echo'</div>';  
        }  
          
        $celkem_db = $this->db('SELECT COUNT(*) as pocet FROM interprets '.$where.'');
        $celkem = $celkem_db[0]['pocet'];
        $stran = ceil($celkem/$pocet);
                echo '<ul class="paginace">';  
        if ($stran > 0)
        {
            for ($i=0; $i<$stran; $i++)
            {
                echo '<li><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.($i+1).'">  '.($i+1).'</a></li>';
            }           
        }   
               echo '</ul>';   
    }

Pokusil jsem se přidat:
 if ($stran > 1)
        {
               echo '<li><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.($i-1).'">&lt;&lt;</a></li>';
                     
        } 
ovšem to mě vždy hodí na stranu 13.

Díky za pomoc.


Zkusil jsem něco takového:
 if ($stran > 1)
        {
        $page=$_GET['strana']  ;
           echo '<li><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.($page-1).'">&lt;&lt;</a></li>';
            } 

Ovšem zase jde klikat do mínusu


Tak stačilo upravit toto :
if ($_GET['strana'] > 1)



Ještě by mě zajímalo jak zvýraznit aktivní položku?
Když vložím claas="active, obarví se vše.
Mělo by to mít podmínku ovšem hází mi chybu
Generation
Profil *
Tak jsem se dostal do této fáze:
if ($stran > 0)
        {
            for ($i=0; $i<$stran; $i++)
            {
                echo '<li ' . ($i == $_GET['strana'] ? ' class="aktivni"' : '') . '><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.($i+1).'">  '.($i+1).'</a></li>';
            }           
        } 
Ale pokude jsem třeba na stránce 2, mám obarvenou stránku 3.
Pokud to upravím, do této podoby.
if ($stran > 0)
        {
            for ($i=1; $i<$stran; $i++)
            {
                echo '<li ' . ($i == $_GET['strana'] ? ' class="aktivni"' : '') . '><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.$i.'">  '.$i.'</a></li>';
            }           
        } 

Tak mi to ve výsledku ukazuje o jednu stranu méně ale zvýrazňuje to správně.


Vyřešeno:
if ($stran > 0)
        {
            for ($i=0; $i<$stran; $i++)
            {
                echo '<li ' . (($i+1) == $_GET['strana'] ? ' class="aktivni"' : ' ') . '><a href="'.$this->domena.'?region='.$_GET['region'].'&amp;stranka=interpreti&amp;strana='.($i+1).'">'.($i+1).'</a></li>';
            }           
        } 

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: