Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze zmiennymi, Zakres widoczności zmiennych.
mariusz_d
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 19.01.2006

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


Witam.
Mam problem - tworzę aplikację i po raz kolejny mam problem z zapsiywaniem wartości w zmiennych.
Próbowałem rozgryźć to z róznych stron ale nic nie wychodzi.
Podobnie - nie chciało mi przekazywać watości zmiennych formularza - pomogło HTTP_POST_VARS - dlaczego dopiero to skoro w php.ini mam właczone "register globals"?

W skrócie wygląda to tak
- tworzę sobie zmienną:
"
$tablica_partii_b=array();
global $tablica_partii_b;
"

w pętli zapsiuję do niej wynik zapytania i jednocześnie wyświetlam:
"
for ($i=0; $i<$ile_znalezionych; $i++)
{$wiersz=mysql_fetch_row($wynik);
if ($kolor == "#cccccc") $kolor = "#ffffff";
else $kolor = "#cccccc";
$tablica_partii_b[i][0]=$wiersz[0];
echo "<tr bgcolor=$kolor><td>";echo $tablica_partii_b[i][0]; echo "</td>";
$tablica_partii_b[i][1]=$wiersz[1];
echo "<td>"; echo $tablica_partii_b[i][1]; echo"</td>" ;
$tablica_partii_b[i][2]=$wiersz[2];
echo "<td>"; echo $tablica_partii_b[i][2]; echo "</td>" ;
$tablica_partii_b[i][3]=$wiersz[3]; }
echo "<td>"; echo $tablica_partii_b[i][3]; echo "</td>" ;
echo "<td> <input type=checkbox name=wybierz value=aa/> </td>";
echo "</tr>"; }
"
Tu działa pięknie, ale jak kilka linijek niżej próbuję wyświetklić coś ze zeminnej np:
"
echo "z tablicy";
echo $tablica_partii_b[1][1];
"
To wyświetla mi tylko napis "z tablicy"

Moż ecoś robię nie tak, ale z tymi zmiennymi w php w ogóle nie mogę dojść do ładu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Ludvik
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Sformatuj poprawnie kod... Pytasz się o zakresy, a podajesz kawałki kodu bez umiejscowienia ich...

Poza tym global nie czyni zmiennej globalną, tylko informuje o włączeniu zmiennej globalnej do zakresu.

  1. <?php
  2. $zmienna = 1;
  3. function funkcja() {
  4. global $zmienna;
  5. echo $zmienna;
  6. }
  7. ?>


Lepiej używać tablicy GLOBALS.
Go to the top of the page
+Quote Post
mariusz_d
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 19.01.2006

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


No to poprawiam:

  1. $tablica_partii_b=array();
  2. global $tablica_partii_b;
  3. $ile_znalezionych=mysql_num_rows($wynik);
  4. echo "Znaleziono "; echo $ile_znalezionych; echo " rozegranych partii <br>";
  5. //tabela wyświetlająca partie grane białymi
  6.  $kolor = "#cccccc";
  7.  echo "<tr bgcolor=$kolor><td><strong>Id_partii</strong></td>";
  8.  echo "<td><strong>Id-gracza_czarn</strong></td> ";
  9.  echo "<td><strong>Data rozgrywki</strong></td>"; 
  10.  echo "<td><strong>Wynik</strong></td>"; 
  11.  echo "<td><strong>Wybierz do wyświetlenia</strong></td> </tr>";
  12. for ($i=0; $i<$ile_znalezionych; $i++)
  13. {
  14. $wiersz=mysql_fetch_row($wynik);
  15. if ($kolor == "#cccccc") $kolor = "#ffffff"; 
  16. else $kolor = "#cccccc";
  17.  $tablica_partii_b[i][0]=$wiersz[0]; 
  18.  echo "<tr bgcolor=$kolor><td>";echo $tablica_partii_b[i][0]; echo "</td>";
  19.  $tablica_partii_b[i][1]=$wiersz[1];
  20.  echo "<td>"; echo $tablica_partii_b[i][1]; echo"</td>" ;
  21.  $tablica_partii_b[i][2]=$wiersz[2];
  22.  echo "<td>"; echo $tablica_partii_b[i][2]; echo "</td>" ;
  23.  $tablica_partii_b[i][3]=$wiersz[3]; }
  24.  echo "<td>"; echo $tablica_partii_b[i][3]; echo "</td>" ;
  25.  echo "<td> <input type=checkbox name=wybierz value=aa/> </td>";
  26.  echo "</tr>"; 
  27. }
  28. ?>
  29. </table> 
  30. <?
  31. echo "z tablicy";
  32. echo "$tablica_partii_b[1][0]";
  33. echo "$tablica_partii_b[1][1]";
  34. echo "$tablica_partii_b[1][2]";
  35. echo "$tablica_partii_b[1][3]";


Ten post edytował mariusz_d 20.06.2006, 18:23:34
Go to the top of the page
+Quote Post
Ludvik
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


W indeksach tablicy w pętli for używasz "i" zamiast $i. Jak masz wątpliwości, to pomóż sobie var_dump($tablica_partii_b) po pętli...
Go to the top of the page
+Quote Post
mariusz_d
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 19.01.2006

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


Oczywiście - tyle razy patrzyłem i nie zauważyłem. (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif)
Teraz działa.
Dzięki za pomoc. (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
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: 23.08.2025 - 06:36