Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Pętla w pętli
Piotrwusek
post
Post #1





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Witam


Czy jest możliwa pętla WHILE w pętli WHILE?



Pozdrawiam



Piotrwusek

Ten post edytował JaRoPHP 22.12.2007, 17:24:29
Powód edycji: Dodanie tagu do tematu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Witam

Tak

Pozdrawiam

pion
Go to the top of the page
+Quote Post
Piotrwusek
post
Post #3





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


A IF może być?

Bo mam tak i wyskakuje mi błąd

  1. <?php
  2. $st = mysql_query("SELECT * FROM `".NAMEBASE."kategorie-menu`");
  3. while($strg = mysql_fetch_assoc($st)){
  4.  
  5. $sl = mysql_query("SELECT * FROM `".NAMEBASE."menu`");
  6. while($stg = mysql_fetch_assoc($sl)){
  7.  
  8. if ( $strg[nazwa] == $stg[kategoria] )
  9. {
  10.  print($stg[nazwa])
  11.  
  12. }
  13. }}
  14. ?>
Go to the top of the page
+Quote Post
b_chmura
post
Post #4





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


nie masz średnika przy print, naucz sie czytać błędy
Go to the top of the page
+Quote Post
Piotrwusek
post
Post #5





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


o o o DZIĘKI

A jest coś takiego jak numer powtórzenia pętli?
Go to the top of the page
+Quote Post
webdice
post
Post #6


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Przed pętlą daj:

  1. <?php
  2. $i = 0;
  3. ?>


a w pętli:

  1. <?php
  2. $i++;
  3. ?>


Poczytaj o inkrementacji.
Go to the top of the page
+Quote Post
Piotrwusek
post
Post #7





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Dzięki, tak tylko inaczej sformułowane miałem, a byłem ciekawy czy można to zastąpić?

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
b_chmura
post
Post #8





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


to nie jest kurs on-line, przeczytaj sobie jakiś kurs
Go to the top of the page
+Quote Post
Piotrwusek
post
Post #9





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Dlaczego mi to nie idzie


Mam pętle w pętli i gdy chę żeby po raz drugi pętla druga się wykonała to nie idzie.

  1. <?php
  2. $i = 0;
  3.  
  4.  $st = mysql_query("SELECT * FROM `".NAMEBASE."kategorie-menu`");
  5. while($kat = mysql_fetch_assoc($st)){
  6. $i++;
  7.  
  8. $sl = mysql_query("SELECT * FROM `".NAMEBASE."menu` WHERE id='$i'");
  9. while($stg = mysql_fetch_assoc($sl)){
  10. $dd = $stg[kategoria];}
  11.  
  12. }
  13. ?>



wykonuje mi tylko raz drugą pętle


Cytat(b_chmura @ 22.12.2007, 17:38:34 ) *
to nie jest kurs on-line, przeczytaj sobie jakiś kurs

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
marcio
post
Post #10





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Ja tam nie wiem ale skoro 2 petle while to moze 2 wartosci
  1. <?php
  2. $i = 0;
  3.  
  4.  $st = mysql_query("SELECT * FROM `".NAMEBASE."kategorie-menu`");
  5. while($kat = mysql_fetch_assoc($st)){
  6. $i++;
  7.  
  8. $a = 0;
  9.  
  10. $sl = mysql_query("SELECT * FROM `".NAMEBASE."menu` WHERE id='$i'");
  11. while($stg = mysql_fetch_assoc($sl)){
  12.  $a++; 
  13.  $dd = $stg[kategoria];}
  14.  
  15. }
  16. ?>

albo
  1. <?php
  2. $i = 0;
  3.  
  4.  $st = mysql_query("SELECT * FROM `".NAMEBASE."kategorie-menu`");
  5. while($kat = mysql_fetch_assoc($st)){
  6.  
  7.  
  8. $sl = mysql_query("SELECT * FROM `".NAMEBASE."menu` WHERE id='$i'");
  9. while($stg = mysql_fetch_assoc($sl)){
  10. $i++;
  11. $dd = $stg[kategoria];}
  12.  
  13. }
  14. ?>

ale nie wiem moze o cos innego chodzi (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
webdice
post
Post #11


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Najprawdopodobniej masz złe drugie zapytanie, w id ma być chyba $kat['id'] a nie $i.
Go to the top of the page
+Quote Post
b_chmura
post
Post #12





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


$i++; umieść zaraz przed końcem ( } ) pierwszej pętli
poza tym skoro wyświetlasz wszystkie rekordy to po co rozróżniać je po ID?

  1. <?php
  2. $i = 0;
  3.  
  4. $st = mysql_query("SELECT * FROM `".NAMEBASE."kategorie-menu`");
  5. while($kat = mysql_fetch_assoc($st))
  6. {
  7. echo 'costam ['.$i.']<hr />
  8. ';
  9. $sl = mysql_query("SELECT * FROM `".NAMEBASE."menu`");
  10.  
  11. while($stg = mysql_fetch_assoc($sl))
  12. {
  13. echo $stg['kategoria'];
  14. }
  15. $i++;
  16. }
  17. ?>
Go to the top of the page
+Quote Post

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: 25.08.2025 - 12:01