Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem z wyciągnięciem danych z zapytania ..., Problem z pętlą while(błagam o pomoc )
kamillo121
post
Post #1





Grupa: Zarejestrowani
Postów: 127
Pomógł: 6
Dołączył: 26.07.2009

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


Witam, otóż mam jeden plik functions.php i index.php.
W functions.php napisałem sobie taką funkcję :
CODE
function pokazTematy(){
$sql="SELECT * FROM `forum_tematy` ";
$result=mysql_query($sql)
or die(mysql_error());
$row=mysql_fetch_array($result);
return $row;
}


W index.php includuje , łączę się z bazą danych , wybieram bazę przypisuję zmiennej $tab=pokazTematy(); no i właśnie i dalej mam problem ....
Próbowałem while ale udaje mi się wyciągnąć tylko jedno pole i to w nieskończoność ...(nie mogę np. napisać w środku pętli while $tab=mysql_fetch_array($result); bo nie ma takiej zmiennej )
Zaś pętlą foreach zwrócę tylko jeden rekord ...
Nie mam pojęcia jak to zrobić i nie wiem czy w ogóle się da tak zrobić czy od razu w funkcji trzeba wyciągać dane , pomoże ktoś ?

Ten post edytował kamillo121 26.07.2009, 19:10:29
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
potreb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


Wyprintuj sobie funkcje i dostaniesz wynik twojego pytania.

Ten post edytował potreb 26.07.2009, 18:54:27


--------------------

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





Grupa: Zarejestrowani
Postów: 127
Pomógł: 6
Dołączył: 26.07.2009

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


No co , wyskoczy mi array (gdy wpiszę print(pokazTematy()); )


Proszę pomóżcie, bo to już któreś z kolei forum na którym pytam i nie dostaje odp sad.gif

Ten post edytował kamillo121 26.07.2009, 19:09:18
Go to the top of the page
+Quote Post
potreb
post
Post #4





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


  1. <?php
  2. print_r(mojafunkcja());
  3. ?>


Jeżeli chcesz aby zwróciła ci całą tablicę musisz zastosować pętlę dla funkcji a dane zapisać znów do tablicy.


--------------------

Go to the top of the page
+Quote Post
TrevorGryffits
post
Post #5





Grupa: Zarejestrowani
Postów: 139
Pomógł: 24
Dołączył: 29.07.2007
Skąd: Tarnowskie Góry

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


Dokładnie rzecz biorąc to wy"var_dump"uj

#Edit: Eh. A tak mało brakowało;)

Ten post edytował TrevorGryffits 26.07.2009, 19:14:21
Go to the top of the page
+Quote Post
kamillo121
post
Post #6





Grupa: Zarejestrowani
Postów: 127
Pomógł: 6
Dołączył: 26.07.2009

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


czyli np
wyciągnąć np
funkcję przypiszę do zmiennej $tab

while($tab ){
$tytul->assign['tytul']=$tab['tytul'];
$autor->assign['autor_tem']=$tab['autor_tem'];
$data->assign['data_dodania']=$tab['data_dodania'];
}
I potem każda pętla dla każdej tabeli ? jeżeli całkiem wszystko pokręciłem to przepraszam ale już o to pytałem i mam tak namieszane że hej sad.gif


Po var_dump mam

array(10) { [0]=> string(1) "1" ["id"]=> string(1) "1" [1]=> string(9) "Regulamin" ["tytul"]=> string(9) "Regulamin" [2]=> string(7) "Kamillo" ["autor_tem"]=> string(7) "Kamillo" [3]=> string(19) "2009-07-26 00:21:00" ["data_dodania"]=> string(19) "2009-07-26 00:21:00" [4]=> string(29) "Regulamin : 1 2 3 4 5 6" ["watek"]=> string(29) "Regulamin : 1 2 3 4 5 6" }

Ten post edytował kamillo121 26.07.2009, 19:17:48
Go to the top of the page
+Quote Post
potreb
post
Post #7





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


  1. <?php
  2. function pokazTematy(){
  3. $sql="SELECT * FROM `forum_tematy` ";
  4. $result=mysql_query($sql)
  5. while($row=mysql_fetch_array($result)) {
  6. $tab[$row['id']] = array('id' => $row['id'], 'title' => $row['title']);
  7. }
  8. return $tab;
  9. }
  10.  
  11. foreach( pokazTematy() as $key => $value) {
  12. echo $value;
  13. }
  14. ?>


Podstaw swoje dane w tablicy i zobaczysz efekt, Bardzo proste rozwiązanie?

Ten post edytował potreb 26.07.2009, 19:19:25


--------------------

Go to the top of the page
+Quote Post
kamillo121
post
Post #8





Grupa: Zarejestrowani
Postów: 127
Pomógł: 6
Dołączył: 26.07.2009

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


No i wyskakuje mi ArrayArrayArray
Go to the top of the page
+Quote Post
potreb
post
Post #9





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


  1. <?php
  2. foreach( pokazTematy() as $key => $value) {
  3. echo $value['id'] . $value['title'];
  4. }
  5. ?>


Musisz dopisać do value klucz z tablicy

Ten post edytował potreb 26.07.2009, 19:29:47


--------------------

Go to the top of the page
+Quote Post
TrevorGryffits
post
Post #10





Grupa: Zarejestrowani
Postów: 139
Pomógł: 24
Dołączył: 29.07.2007
Skąd: Tarnowskie Góry

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


Już miałeś wyżej podane co zrobić jak zwykłe print czy echo nie działa i pokazuje tylko Array. Zrób co trzeba i zobacz jak musisz się dostać do wnętrza tej tablicy w pętli.

Edit: Znowu...

Ten post edytował TrevorGryffits 26.07.2009, 19:27:55
Go to the top of the page
+Quote Post
kamillo121
post
Post #11





Grupa: Zarejestrowani
Postów: 127
Pomógł: 6
Dołączył: 26.07.2009

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


Już za to pytanie przepraszam "Potreb" (tak prosta odpowiedź) ale już mam pod koniec drugiego dnia taki mętlik że hej ... Dzięki ogromne , czuję, że będę tutaj częstym gościem smile.gif
Pomogłeś niesamowicie mi ...
Teraz muszę tylko zrozumieć to przypisanie
while($row=mysql_fetch_array($result)) {
$tab[$row['id']] = array('id' => $row['id'], 'tytul' => $row['tytul'], 'autor_tem'=>$row['autor_tem'], 'data_dodania'=>$row['data_dodania'], 'watek'=>$row['watek']);
} haha.gif

Ten post edytował kamillo121 26.07.2009, 19:31:15
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 Aktualny czas: 22.08.2025 - 00:58