Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z pętlą
Purpen
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


Witajcie, mam pewną pętlę:

  1. foreach($_POST['produkt'] AS $KEY => $VALUE){
  2. if(is_numeric($VALUE) && $VALUE > 0) {
  3. dbConn();
  4. $query = "SELECT count(cena) AS ilosc, cena, nazwa FROM produkty WHERE product_id = $KEY LIMIT 1";
  5. $result = mysql_query($query) or die("Błąd w <strong>query1</strong>");
  6. $row = mysql_fetch_array($result);
  7. if($row['ilosc'] > 0) {
  8. $total += $VALUE * $row['cena'];
  9.  
  10. $item = array('nazwa' => $row['nazwa'], 'sztuki' => $VALUE);
  11. }
  12. }
  13. }


Jak zrobić aby tablica $item
  1. $item = array('nazwa' => $row['nazwa'], 'sztuki' => $VALUE);
była w pełnej formie dostępna również poza pętlą? Bo na razie jak wpisuję poza pętlą
  1. echo "$item[nazwa], $item[sztuki]<br>";
- to wyświetla mi się wynik tylko z ostatniego obiegu pętli, a ja chcę ze wszystkich, jeden pod drugim...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
tehaha
post
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


spróbuj tak:

  1. $item = array();
  2. foreach($_POST['produkt'] AS $KEY => $VALUE){
  3. if(is_numeric($VALUE) && $VALUE > 0) {
  4. dbConn();
  5. $query = "SELECT count(cena) AS ilosc, cena, nazwa FROM produkty WHERE product_id = $KEY LIMIT 1";
  6. $result = mysql_query($query) or die("Błąd w <strong>query1</strong>");
  7. $row = mysql_fetch_array($result);
  8. if($row['ilosc'] > 0) {
  9. $total += $VALUE * $row['cena'];
  10.  
  11. $item[] = array('nazwa' => $row['nazwa'], 'sztuki' => $VALUE);
  12. }
  13. }
  14. }
  15. print_r($item);


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





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


Dzięki wielkie (IMG:style_emoticons/default/smile.gif) .
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


pisz na forum a nie na pw, bo tak to może się kiedyś komuś przydać ten temat, co do wyświetlania tych elementów w bardziej uporządkowanej formie to spróbuj tak:
  1. <?php
  2.  
  3. foreach($item as $value)
  4. {
  5. echo $value['nazwa']." - sztuki: ".$value['sztuki']."<br/>\n";
  6. }
  7.  
  8. ?>
Go to the top of the page
+Quote Post
Purpen
post
Post #5





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


No ok, dziękuję bardzo. Ale teraz takie pytanie, jakbym chciał już ostatecznie tą całą treść z pętli, to kilka rekordów, przypisać do jednej zmiennej, którą następnie wyślę na emaila, to jak to zrobić?

Tzn. w zasadzie wiem, jak to zrobić, ale proszę o podsunięcie możliwie najłatwiejszej metody.

Ten post edytował Purpen 7.05.2010, 12:29:48
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To pokaż, jak robisz, a wtedy skonfrontujemy.
Go to the top of the page
+Quote Post
Purpen
post
Post #7





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


Jeszcze nie zrobiłem. Myślałem, aby wewnątrz tej pętli dać funkcję mail(), która wywoływana byłaby tylko po ostatnim jej okrążeniu.
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Hmm, ale po co tak utrudniać życie?

Wiesz, jak się łączy stringi (ekhm, nie bieliznę (IMG:style_emoticons/default/biggrin.gif) )?
Go to the top of the page
+Quote Post
Purpen
post
Post #9





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


Ze mną jest tak, że mam spore braki w podstawach php ;d.
No, ale wiem jak się łączy.
Np:
  1. $s = $x.$y;


Ten post edytował Purpen 7.05.2010, 12:40:37
Go to the top of the page
+Quote Post
tehaha
post
Post #10





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


  1. <?php
  2.  
  3. foreach($item as $value)
  4. {
  5. $total_items .= $value['nazwa']." - sztuki: ".$value['sztuki']."<br/>\n";
  6. }
  7. echo $total_items;
  8.  
  9. ?>
Go to the top of the page
+Quote Post
Purpen
post
Post #11





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.01.2008

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


Dzięki wielkie (IMG:style_emoticons/default/smile.gif) . Wszystko działa.
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: 12.10.2025 - 16:21