Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] tworzenie zmiennych na podsawie zawartości danej zmiennej
Forum PHP.pl > Forum > Przedszkole
gawar
Mam zapytanie do bazy MySQL
  1. $max=$sth->query('SELECT sektor, MAX(rzad) as max_rzad, MAX(miejsce) as max_miejsce, MAX(podmiejsce) as max_p
  2. FROM t_miejsce
  3. Group by sektor
  4. order by sektor ASC');


i teraz odczytuje odpwiedź za pomocą foreach
  1. foreach ($max as $r){
  2.  
  3. $max_s = $r["sektor"] ;
  4. $max_r= $r["max_rzad"] ;
  5. $max_m= $r["max_miejsce"] ;
  6. $max_p= $r["max_p"] ;
  7.  
  8. echo ''.$max_s.' '.$max_r.' '.$max_m.' '.$max_p.'<br/>';
  9.  
  10. }

Jak zrobić żeby utworzyć nazwy zmiennych dla tych 4 zmiennych aby wyglądały tak $max_s1, $max_r1, $max_m1, $max_p1 dla max_s=1 dla max_s=7 $max_s7, $max_r7, $max_m7, $max_p7
Chodzi o to żeby to co jest w zmiennej $max_s przypisać do jej nowo utworzonej nazwy zmiennej $max_s.$r["sektor"] = $r["sektor"] ;
timon27
Da się to zrobić, jednak kod będzie mało czytelny i trudniejszy do dalszej obróbki.
Czemu nie użyjesz tablicy?

Czyli zamiast $max_s1 będziesz miał $max_s[1] itd.


  1. $i=0;
  2. foreach ($max as $r){
  3.  
  4. $max_s[$i] = $r["sektor"] ;
  5. $max_r[$i]= $r["max_rzad"] ;
  6. $max_m[$i]= $r["max_miejsce"] ;
  7. $max_p[$i]= $r["max_p"] ;
  8.  
  9. echo ''.$max_s[$i].' '.$max_r[$i].' '.$max_m[$i].' '.$max_p[$i].'<br/>';
  10. $i++;
  11. }
  12.  

gawar
A jak mam się odnieść potem do tych zmiennych już z poza pętli?
timon27
No przecież masz wszystko w 4 tablicach.
Masz przykład ponownego wyświetlenia danych:

  1. foreach ($max_s as $i=> $value) {
  2. echo ''.$max_s[$i].' '.$max_r[$i].' '.$max_m[$i].' '.$max_p[$i].'<br/>';
  3. }
gawar
Ok, o to chodizło:) dziękuję!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.