Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Problem z funkcja
lukash82
post 8.10.2007, 13:27:49
Post #1





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

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


Witam. Mam taki problemik z deklaracja funkcji. Pisze sobie prosta aplikacje i zauważyłem, ze pewien fragment kodu będzie mi sie identycznie powtarzał parę razy. Postanowiłem wiec użyć do tego funkcji, w która wpisze ten kod a potem wywołam ja w odpowiednich miejscach. A wiec w uproszczeniu mam coś takiego:
  1. <?php
  2. $autor = $row['news_autor'];
  3. function wyswietl(){
  4. echo "Autor: " . $autor;
  5. }
  6. if (jakis warunek)
  7. {
  8. echo "opcja 1";
  9. wyswietl()
  10. }
  11. else
  12. {
  13. wyswietl()
  14. }
  15. ?>

Jak widać zmienna autor otrzymuje z jakiegoś wcześniejszego zapytania do bazy i zmienna ta na pewno ma jakąś wartość bo już próbowałem robić samo echo. Niestety tak jakby w ciele funkcji PHP nie widzi mi tej zmiennej. Wyczytałem w manualu, ze trzeba zmienna autor zadeklarować jako globalna. Zrobilem cos takiego:
  1. <?php
  2. global $autor = $row['news_autor'];
  3. ?>

ale wtedy jakieś dziwne efekty wizualne pojawiają sie mi na stronie... tzn, stronka sie rozwala trochę, a w miejscu, gdzie ma sie pojawić wywołana funkcje jest tylko tekst "Autor: " bez zmiennej, która ma wyświetlić np. imię autora. Może po prostu coś źle robie...? Jeśli wiecie jak to zrobić to proszę o jakaś podpowiedz. Pozdrawiam, Łukasz.
Go to the top of the page
+Quote Post
foka
post 8.10.2007, 13:31:31
Post #2





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 1.10.2007

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


moze lepiej wywolac f-cje z argumentem:
  1. <?php
  2. function wyswietl($autor)
  3. {
  4. //cialo f-cji
  5. }
  6. ?>

i wywolanie :
  1. <?php
  2. wyswietl($autor)
  3. ?>


pozdr
Go to the top of the page
+Quote Post
lukash82
post 8.10.2007, 17:59:18
Post #3





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

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


Ok, dziala. Brakowalo jedengo srednika na koncu linijki przy wywolaniu funkcji. Niestety tlo mam dosc ciemne w kolorze tekstu (dopiero potem nakladam jasniejsze, ktore przez ten blad sie nie pokazywalo) i nie dojrzalem bledu jaki mi PHP wywalalo. A wywolywanie funkcji z argumentem tez sie przydalo. Dzieki foka. Pozdrawiam, Łukasz
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: 26.06.2025 - 05:25