Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] optymalizacja kodu
lutador
post
Post #1





Grupa: Zarejestrowani
Postów: 183
Pomógł: 3
Dołączył: 5.03.2007
Skąd: Opole

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


Witam,


Mam w bazie w tabeli okolo 350 rekordow, wyswietlenie ich na stronie trwa okolo 1min lub dluzej. Jest to zdecydowanie za dlugo. Ponizej przestawiam swoj kod. Czy ktos moze mi powiedziec jak go zoptymalizowac zeby wyniki wyswietlaly sie szybciej

  1. <?php
  2. if($_GET['id_mag'] != '111') { // jezeli != 111 wyswietlam wszystkie lokalizacje  
  3.      $where = "WHERE u.magazyn = '$_GET[id_mag]' AND u.magazyn = l.id_mag";
  4.    }
  5.        
  6.    $query = ("SELECT u.id,
  7.        l.nazwa,
  8.        u.umowa,
  9.        u.tresc,
  10.        u.data_zaw,
  11.        u.data_zak,
  12.        u.wypow,
  13.        u.kontrahent,
  14.        u.nip,
  15.        u.stawka,
  16.        u.kaucja,
  17.        u.magazyn,
  18.        u.stan,
  19.        u.uwagi
  20.        FROM umowy u, lokalizacje l
  21.        {$where}
  22.        {$order}
  23.        ");
  24.  
  25. echo '<table class="umowy" width="1600" border="1">';
  26.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=l'.$sort.'">Lokalizacja</a></th>';
  27.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=n'.$sort.'">Nr umowy</a></th>';
  28.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=p'.$sort.'">Treść</a></th>';
  29.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=z'.$sort.'">Data zawarcia</a></th>';
  30.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=t'.$sort.'">Data zakończenia</a></th>';
  31.    echo '<th>Wypowiedzenie</th>';
  32.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=k'.$sort.'">Kontrahent</a></th>';
  33.    echo '<th><a href="list_umowy.php?id_mag='.$_GET['id_mag'].'&sort=i'.$sort.'">NIP</a></th>';
  34.    echo '<th>Stawka</th>';
  35.    echo '<th>Kaucja</th>';
  36.    echo '<th>Uwagi</th>';
  37.    echo '<th>Stan</th>';
  38.    echo '<th>Edycja/Usuń</th></tr>';
  39.    
  40.    while($wynik = mysql_fetch_array($wyswietl))    
  41.            {
  42.                    if($wynik['data_zak'] == '2132578800')
  43.                    {     $data_zak = "nieokreślony"; }
  44.                    else
  45.                    { $data_zak = @date('Y-m-d',$wynik['data_zak']);    }
  46.                    
  47.                    if($wynik['stan'] == '0')
  48.                        $wyg = ((++$parz % 2)?'1':'2') . '"\"';
  49.                    else
  50.                        $wyg = '3';            
  51.                                                          
  52.              echo '<tr class="dane'.$wyg.'"><td width="120">'. $wynik['nazwa'].'</td>';
  53.            echo '<td width="100">'. $wynik['umowa'].'</td>';
  54.            echo '<td width="250">'. $wynik['tresc'].'</td>';
  55.            echo '<td width="100">'. @date('Y-m-d',$wynik['data_zaw']).'</td>';
  56.            echo '<td width="130">'. $data_zak .'</td>';
  57.            echo '<td>'. $wynik['wypow'].' dni</td>';
  58.            echo '<td>'. $wynik['kontrahent'].'</td>';
  59.            echo '<td>'. $wynik['nip'].'</td>';
  60.            echo '<td width="200">'. $wynik['stawka'].'</td>';
  61.            echo '<td>'. $wynik['kaucja'].'</td>';
  62.            echo '<td width="150">'. $wynik['uwagi'].'</td>';
  63.            echo '<td width="40"><center><a href="list_umowy.php?act=stan&id_um=' .$wynik['id']. '&mag='.$wynik['magazyn'] .'&stan='.$wynik['stan'] .'"><img src="image/act.png" width="20" height="20" alt="Stan Umowy" /></a></center></td>';
  64.            echo '<td width="80">
  65.            <a href="list_umowy.php?act=edit&id_um=' .$wynik['id']. '&mag='.$wynik['magazyn'] .'"><img src="image/edit.png" width="16" height="16" alt="Edycja" /></a>   
  66.            <a href="list_umowy.php?act=del&id=' .$wynik['id']. '&mag='.$wynik['magazyn'].'" onClick="return confirm('Czy usunąć umowę?')"><img src="image/drop.png" width="16" height="16" alt="Usuń" /></a></td></tr>';  
  67.            }
  68. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piotrooo89
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




ale w SQL odwołujesz się bezpośrednio do servera SQL, a jeśli robisz to na stronie dodatkowo zaprzęgasz do tego paser PHP. i właśnie tu pojawia się problem stronicowania.
Go to the top of the page
+Quote Post

Posty w temacie


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: 10.10.2025 - 03:06