Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Przypisanie kolumnom zmiennych
stefan9209
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.12.2015

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


Witam,

Mam taki kod do pobierania nazw kolumn z tabeli:

  1. $sql = mysql_query( $nazwa_polecenia_sql );
  2.  
  3. //sprawdzam czy jest wynik
  4. if( mysql_num_rows($sql) > 0 ){
  5.  
  6. //pobieram kolumny i przypisuje do nich zmienne
  7. while( $tabela = mysql_fetch_array($sql) ){
  8.  
  9. //sprawdzam ile jest kolumn
  10. $liczbaKolumn = mysql_num_fields($sql);
  11.  
  12. for ($i=0; $i < $liczbaKolumn; $i++) {
  13.  
  14.  
  15. }
  16.  
  17. }
  18. }


Wszystko działa. Wypisuje po kolei jakie mam kolumny w tabeli. Mogę się do nich odwoływać poprzez $tabela[nazwa_kolumny].

Chciałbym się odwoływać do nich za pomocą $nazwa_kolumny. Chcę po prostu przypisać zmienne danym kolumnom. Jak to można zrobić?

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
stefan9209
post
Post #2





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.12.2015

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


Super, działa, dzięki!

Mam jeszcze pytanie. Chciałem skrócić kod w różnych plikach i ten poniższy kod dałem w funkcji. Potem w innych plikach, gdzie będę chciał pobrać nazwy to zamiast dublować kodu dam
  1. function pobierzKolumny ( $nazwa_polecenia_sql );


Ale.. te zmienne typu $nazwa_kolumny dają wartości, ale tylko, jeśli wywołam je bezpośrednio w function(). Jeśli wywołam je właśnie w innym pliku (gdzie załączam funkcję), to nie działa.. Zmienne nie są przekazywane..

  1. function pobierzKolumny( $nazwa_polecenia_sql ){
  2. $sql = mysql_query( $nazwa_polecenia_sql );
  3.  
  4. //sprawdzam czy jest wynik
  5. if( mysql_num_rows($sql) > 0 ){
  6.  
  7. //pobieram kolumny i przypisuje do nich zmienne
  8. while( $tabela = mysql_fetch_array($sql) ){
  9.  
  10. //sprawdzam ile jest kolumn
  11. $liczbaKolumn = mysql_num_fields($sql);
  12.  
  13. for ($i=0; $i < $liczbaKolumn; $i++) {
  14. $nazwa_pola = mysql_field_name($sql, $i);
  15. ${$nazwa_pola} = $tabela[$nazwa_pola];
  16. }
  17.  
  18.  
  19. }
  20. }
  21. }
Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 07:50