Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Dodawanie danych do tablicy!
_Martin_
post 20.05.2009, 16:55:46
Post #1





Grupa: Zarejestrowani
Postów: 352
Pomógł: 9
Dołączył: 16.09.2005
Skąd: Rybnik

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


Witam
Oto treść kodu:

  1. <?php
  2. $zap = mysql_fetch_array(mysql_query('SELECT * FROM formacja WHERE id_klub = "651"'));
  3. print_r($zap[3]);  //Wynik=10386.0,10390.0,10389.0,10391.0,10397.0,10398.0,10399.0,10396.0,10400.0,10
  4. 01.0,10385.1,10405.2,10387.3,10395.4,10393.5,10403.6,10402.7,10388.8,10404.9,103
  5. 4.10,10392.11
  6. $sQ = explode(',', $zap[3]);
  7. print_r($sQ); // Wynik Array ( [0] => 10386.0 [1] => 10390.0 [2] => 10389.0 [3] => 10391.0 [4] => 10397.0 [5] => 10398.0 [6] => 10399.0 [7] => 10396.0 [8] => 10400.0 [9] => 10401.0 [10] => 10385.1 [11] => 10405.2 [12] => 10387.3 [13] => 10395.4 [14] => 10393.5 [15] => 10403.6 [16] => 10402.7 [17] => 10388.8 [18] => 10404.9 [19] => 10394.10 [20] => 10392.11 )
  8.  
  9.  
  10. $ile = count($sQ);
  11.  
  12. $n = 0;
  13. $aRow = array();
  14. for($x = 1; $x <= $ile; $x++){
  15.    
  16.    $numID = explode('.', $sQ[$n]);
  17.    
  18.    $aRow = array( array('id' => $numID[0], 'agressiveness' => 50, 'commitment' => 50, 'setting' => 50, 'position' => $aPMod[$aRow['pozycja']], 'reserve' => $numID[1]));
  19. $n++;
  20. }
  21.  
  22.  
  23. // Wynik print_r($aRow);
  24.  
  25. (
  26.    [0] => Array
  27.        (
  28.            [id] => 10392
  29.            [agressiveness] => 50
  30.            [commitment] => 50
  31.            [setting] => 50
  32.            [position] =>
  33.            [reserve] => 11
  34.        )
  35.  
  36. )
  37. ?>


Wszystko było by ok ale chciałem aby wypisało do tablicy wszystkie dane!
A jak widać zapsuje tylko ostatni rekord "10392" z tablicy $sQ

Moze jakaś rada?


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
osl
post 20.05.2009, 17:05:08
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

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


jeżeli przypisujesz do $aRow cały czas nową tablicę, to czemu się dziwisz?
Go to the top of the page
+Quote Post
hondek
post 20.05.2009, 18:08:21
Post #3





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


zamiast $numID = explode('.', $sQ[$n]);
powinno byc chyba $numID = explode('.', $sQ[$x]);


--------------------
przetwornik yt na czasie :)
Go to the top of the page
+Quote Post
_olo_1984
post 20.05.2009, 18:34:48
Post #4





Grupa: Zarejestrowani
Postów: 289
Pomógł: 77
Dołączył: 5.08.2006

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


~osl dobrze powiedział, nie zmieniaj nic tylko nie nadpisuj cały czas nowej tablicy, pomijając fakt tego tajemniczego wyniku zapytania z bazy, generalnie to powinno być tak (zaczołem od momentu, gdzie maż już tablicę $sQ
  1. <?php
  2. $sQ = array(
  3.            0 => '10386.0',
  4.            1 => '10390.0',
  5.            2 => '10389.0',
  6.            3 => '10391.0',
  7.            4 => '10397.0',
  8.            5 => '10398.0',
  9.            6 => '10399.0',
  10.            7 => '10396.0',
  11.            8 => '10400.0',
  12.            9 => '10401.0',
  13.            10 => '10385.1',
  14.            11 => '10405.2',
  15.            12 => '10387.3',
  16.            13 => '10395.4',
  17.            14 => '10393.5',
  18.            15 => '10403.6',
  19.            16 => '10402.7',
  20.            17 => '10388.8',
  21.            18 => '10404.9',
  22.            19 => '10394.10',
  23.            20 => '10392.11'
  24. );
  25.  
  26. $ile = count($sQ);
  27.  
  28. $n = 0;
  29. $aRow = array();
  30. for($x = 1; $x <= $ile; $x++){
  31.  
  32.   $numID = explode('.', $sQ[$n]);
  33.  
  34.   $aRow[$n] = array( array('id' => $numID[0], 'agressiveness' => 50, 'commitment' => 50, 'setting' => 50, 'position' => $aPMod[$aRow['pozycja']], 'reserve' => $numID[1]));
  35. $n++;
  36. }
  37.  
  38. echo '<pre>';
  39. print_r($aRow);
  40. ?>


więc kod nie różni się niczym, tylko drobnym szczegółem $aRow[$n] lub $aRow[] (obydwa zadziałają)


--------------------
awake
Go to the top of the page
+Quote Post
_Martin_
post 20.05.2009, 19:30:02
Post #5





Grupa: Zarejestrowani
Postów: 352
Pomógł: 9
Dołączył: 16.09.2005
Skąd: Rybnik

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


thx racja pominięty szczegół " $aRow[$n] " zdało egzamin, kochanie thx


--------------------
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: 14.08.2025 - 10:36