Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]"Wychodzenie" zmiennych poza while()
sadistic_son
post
Post #1





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Zastanawiam się nad pewną właściwością pętli while.
Mamy taki kodzik:
  1. while($row=mysql_fetch_array($result,MYSQL_NUM)){
  2. $zmienna=$row[0];
  3. }
  4. echo $zmienna;
Ten kod nie wyświetli nic.
Natomiast jeśli zrobimy tak:
  1. while($row=mysql_fetch_array($result,MYSQL_NUM)){
  2. $zmienna=$row[0];
  3. }
  4. $zmienna222=$zmienna;
  5. echo $zmienna222;
to wtedy wyświetli się ostatnia wartość $row[0].
Wiecie dlaczego tak jest? Czy to celowe działanie tej pętli czy przypadkowe? Ma to coś na celu?

Ten post edytował sadistic_son 24.02.2010, 06:30:37
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Zrobiłem szybko mały teścik.
  1. <?php
  2. $connection = mysql_connect('localhost', '***', '***');
  3. $database = mysql_select_db('***');
  4. $sql = "SELECT * FROM liczby WHERE 1";
  5. $result = mysql_query($sql);
  6. while($row = mysql_fetch_array($result, MYSQL_NUM)) {
  7. $zmienna = $row[0];
  8. echo $zmienna . '<br />';
  9. }
  10. echo '- ' . $zmienna . '<br />';
  11. $zmienna222 = $zmienna;
  12. echo '- ' . $zmienna222 . '<br />';

W tabeli liczby mam dwa pola: id i liczba. Tabele wypełniłem 11 liczbami (1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0). I oto wynik:
(IMG:http://img525.imageshack.us/img525/2075/forumzg.jpg)
Jak widać do zmiennej $zmienna zostaje przypisana ostatnia wartość $row[0]. Pewnie tak ma być (IMG:style_emoticons/default/smile.gif)
EDIT:
Nie wiem dlaczego tobie nie zadziałało echo $zmienna; zaraz po pętli while, bo mnie działa.

Ten post edytował mortus 24.02.2010, 06:40:03
Go to the top of the page
+Quote Post
sadistic_son
post
Post #3





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Kurde no dziwna sprawa. I Twój i mój przykład zaczęły działać po restarcie kompa, czyli pewnie po restarcie apacha.
Ale taki bug? No nie domyśliłby się człowiek.
Anyway... THX.
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: 22.08.2025 - 17:42