Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]php5, jak powinna wyglądać poprawnie funkcja
neuroine
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 3
Dołączył: 6.05.2009

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


Witam

Mam taką funkcję i chciałbym zapisać ją bardziej profesjonalnie. Do tego chciałem zmienić połącznie z bazą na mysqli, ale pojawia się problem z mysql_fetch_array.
Jak zastąpić echo jakimś sensownym responsem ?

  1. function display($section) {
  2. global $section;
  3.  
  4. $query = "SELECT * FROM `$section` ORDER BY date DESC";
  5. $result = mysql_query($query);
  6.  
  7. while ($row = mysql_fetch_array($result)) {
  8.  
  9. $title = $row['title'];
  10. $date = $row['date'];
  11. $content = $row['content'];
  12. $autor = $row['autor'];
  13.  
  14. echo('<h1>'.$title.'</h1><p class="right">'.$date.'</p>');
  15. echo('<p class="justify">'.$content.'</p>');
  16. echo('<p>Add by: <b>'.$autor.'</b></p>');
  17. echo('<hr />');
  18. };


Będę wdzięczny za rady i uwagi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
darko
post
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat
a. Zależy mi na tym, żeby funkcja była obiektowa.


1. Zrób najpierw klasę, a później przepisz w/w f-cję jako metodę stworzonej klasy

2. Jaki sens ma to:

function display($section) {
global $section;

(IMG:style_emoticons/default/questionmark.gif)

Albo przekazujesz parametr do funkcji, albo czynisz zmienną $section globalną w ciele funkcji, ale nie jedno i drugie, bo to nie ma sensu. W tym momencie w funkcji nadpisujesz przekazany parametr wartością zmiennej $section z zewnątrz funkcji (sic!), a pewnie nie o to chodziło.

// edit

Jednak lepiej będzie zwracać z funkcji określone wartości niż bezpośrednio wypluwać za pomocą echo czy print

Ten post edytował darko 6.12.2009, 21:37:09
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: 9.10.2025 - 16:46