Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL] Pętla w pętli = zapętlanie HELP!
la_chica_bonita
post 18.09.2008, 08:49:06
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 11.04.2007
Skąd: Warszawa

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


Hej,

  1. <?php
  2. $result = mysql_query("SELECT b.idpos, b.miasto, r.region
  3.                        FROM tab_bh b
  4.                            LEFT OUTER JOIN tab_region r ON b.idreg = r.idreg
  5.                        ORDER BY b.`idPOS` ASC;");
  6.  
  7. $result2 = mysql_query("SELECT b.idpos, count( s.model_sprzetu )
  8.                        FROM smp_08 s
  9.                        INNER JOIN tab_bh b ON s.tp_id_partnera = b.idpos
  10.                        GROUP BY b.idpos
  11.                        ORDER BY b.idpos ASC ;");
  12. $ilew = mysql_num_rows($result);
  13. $ilew2 = mysql_num_rows($result2);
  14. ?>


mam z tym taki problem, że jak ilew > ilew2 i gdy robię tak:

  1. <?php
  2. for ($i=0; $i<$ilew; $i++) {
  3.    $row = mysql_fetch_row($result);        
  4.    echo '<tr>';
  5.    echo '<td align=center>'.$row[0].'</td>'; // REGION
  6.    echo '<td align=center>'.$row[1].'</td>'; // DSA
  7.    echo '<td align=center>'.$row[2].'</td>'; // KSA
  8.    echo '<td align=center>'.$row[3].'</td>'; // NAZWA PH
  9.    echo '<td align=center>'.$row[4].'</td>'; // ID BH
  10.    echo '<td align=center>'.$row[5].'</td>'; // MIASTO BH
  11.    for  ($k=0; $k<$ilew2; $i++) {
  12.        $row1 = mysql_fetch_row($result2);
  13.        if ($row1[0]===$row[4])
  14.            echo '<td align=center>'.$row1[1].'</td>'; // dostawa wlasna
  15.    }        
  16.    echo '</tr>';
  17. }
  18. ?>


to mi się zapętla i wyskakuje błąd, że minęło więcej niż 30 sekund i jest błąd.. :/

a jak robię tak:

  1. <?php
  2. $ilew = mysql_num_rows($result);
  3. $ilew2 = mysql_num_rows($result2);
  4.  
  5. for ($i=0; $i<$ilew; $i++) {
  6.    $row = mysql_fetch_row($result);
  7.    $row1 = mysql_fetch_row($result2);        
  8.    echo '<tr>';
  9.    echo '<td align=center>'.$row[2].'</td>'; // REGION
  10.    echo '<td align=center>'.$row[0].'</td>'; // ID BH
  11.    echo '<td align=center>'.$row[1].'</td>'; // MIASTO BH
  12.    if ($row1[0]===$row[0])
  13.        echo '<td align=center>'.$row1[1].'</td>'; // dostawa wlasna
  14.    else
  15.        echo '<td align=center>0</td>';
  16.        
  17.    echo '</tr>';
  18. }
  19. ?>


to pojawia mi się inny problem, bo jak jest $row1[0] = $row[0] to jest spoko, a jak nie jest rowne, to pozniej do konca wypisuje mi zera, bo row zarowno jak i row1 przesuwaja sie.. a row1 powienien sie zatrzymac.. qrcze jak temu zaradzic?

pliska help

Ten post edytował la_chica_bonita 18.09.2008, 08:50:54
Go to the top of the page
+Quote Post
Czapla
post 18.09.2008, 09:05:20
Post #2





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

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


  1. <?php
  2. for  ($k=0; $k<$ilew2; $i++) {
  3.       $row1 = mysql_fetch_row($result2);
  4.       if ($row1[0]===$row[4])
  5.           echo '<td align=center>'.$row1[1].'</td>'; // dostawa wlasna
  6.   }
  7. ?>

Po pierwsze w drugiej lini w pętli for masz i++ ma być k++
Po drugie zobacz na tego ifa porównujesz $row1[0]===$row[4] i sprawdzasz czy są identyczne co jest nieprawdą stąd zwraca ci warunek po else
Po trzecie:
Cytat
a row1 powienien sie zatrzymac

użyj break $k;

Co do tego drugiego przykladu to sprawa jest podobna używasz operatora ===, ktory sprawdza czy zmienne są tego samego typu i sobie równe.

Ten post edytował Czapla 18.09.2008, 09:12:25


--------------------
Life is a game, continue playing and try to be a pr0.
Go to the top of the page
+Quote Post
la_chica_bonita
post 18.09.2008, 09:47:08
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 11.04.2007
Skąd: Warszawa

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


cos to nie idzie.. wraz..
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 Wersja Lo-Fi Aktualny czas: 28.06.2025 - 15:20