Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL][PHP]Klasy, funkcje, zależności... po co?
Forum PHP.pl > Forum > Przedszkole
mayu11
Od kiedy piszę w PHP robię np tak:

  1. $zapytanie = mysql_query("SELECT * FROM `xxx`");
  2.  
  3. while($zapytanie_p = mysql_fetch_array($zapytanie){
  4. print $zapytanie_p[1];
  5. }


Zamierzam robić forum, więc chciałem popatrzyć jak PHPbb jest skonstruowane...
I jak patrzę na index to on jest jakiś taki.. ;/

Zawiera jakieś nie wiem co i nie wiem po co:

  1. if ( $mark_read == 'forums' )
  2. {
  3. if ( $HTTP_GET_VARS['sid'] != $userdata['session_id'] )
  4. {
  5. message_die(GENERAL_ERROR, 'Invalid_session');
  6. }
  7. if ( $viewcat < 0 )
  8. {
  9. if ( $userdata['session_logged_in'] )
  10. {
  11. $sql = "DELETE FROM " . READ_HIST_TABLE . "
  12. WHERE user_id = " . $userdata['user_id'];
  13.  
  14. if ( !$db->sql_query($sql) )
  15. {
  16. message_die(GENERAL_ERROR, 'Error in marking all as read', '', __LINE__, __FILE__, $sql);
  17. }
  18. }
  19.  
  20. $template->assign_vars(array(
  21. 'META' => '<meta http-equiv="refresh" content="' . $board_config['refresh'] . ';url=' .append_sid("index.$phpEx") . '">')
  22. );
  23. }
  24. else
  25. {
  26. if ( $userdata['session_logged_in'] )
  27. {
  28. // get the list of object authorized
  29. $keys = array();
  30. $keys = get_auth_keys($viewcatkey);
  31. $post_ids = $forum_ids = '';
  32.  
  33. // mark each forums
  34. for ($i=0; $i < count($keys['id']); $i++) if ($tree['type'][ $keys['idx'][$i] ] == POST_FORUM_URL)
  35. {
  36. $forum_ids .= (($forum_ids) ? ', ' : '') . $tree['id'][$keys['idx'][$i]];
  37. }
  38.  
  39. if ( $forum_ids )
  40. {
  41. $sql = "DELETE FROM " . READ_HIST_TABLE . "
  42. WHERE user_id = " . $userdata['user_id'] . "
  43. AND forum_id IN($forum_ids)";
  44. if ( !$db->sql_query($sql) )
  45. {
  46. message_die(GENERAL_ERROR, 'Error in marking all as read', '', __LINE__, __FILE__, $sql);
  47. }
  48. }
  49. }
  50.  
  51. $template->assign_vars(array(
  52. 'META' => '<meta http-equiv="refresh" content="3;url=' .append_sid("index.$phpEx?" . POST_CAT_URL . "=$viewcat") . '">')
  53. );
  54. }
  55.  
  56. $message = $lang['Forums_marked_read'] . '<br /><br />' . sprintf($lang['Click_return_index'], '<a href="' . append_sid("index.$phpEx?" . POST_CAT_URL . "=$viewcat") . '">', '</a> ');
  57. message_die(GENERAL_MESSAGE, $message);
  58. }


I mam tutaj kilka pytań...

Czym różni się zwykłe: mysql_query(), od sql_query()?,
Czym różni się klasa od funkcji (Patrzyłem na manuala, ale wyglądało jakoś mało wytłumaczalnie ;/, ale wyglądało jakby klasa była zbiorem funkcji.
Czy "moje pisanie" jest gorsze od tego drugiego?
Daiquiri
sql_query() może być np. funkcją w klasie, która jest dostępna (ta funkcja) w momencie gdy stworzysz egzemplarz danej klasy smile.gif. Innymi słowy nie jest ona "wbudowana" w język tylko zdeklarowana przez programistę.

Cytat(mayu11 @ 24.04.2010, 12:27:12 ) *
Czym różni się klasa od funkcji (Patrzyłem na manuala, ale wyglądało jakoś mało wytłumaczalnie ;/, ale wyglądało jakby klasa była zbiorem funkcji.
Poszukaj informacji o programowaniu obiektowym smile.gif.

Cytat(mayu11 @ 24.04.2010, 12:27:12 ) *
Czy "moje pisanie" jest gorsze od tego drugiego?
Jest inne przede wszystkim. Czy gorsze? Jak dla mnie to zależy od tony czynników. Jeżeli jednak miałabym uogólniać - to gorsze smile.gif.
blooregard
Cytat
Zamierzam robić forum, więc chciałem popatrzyć jak PHPbb jest skonstruowane...
I jak patrzę na index to on jest jakiś taki.. ;/

Moim skromnym zdaniem jeszcze za wcześnie, byś się porywał na coś takiego, jak forum, bo z tego, co piszesz, nie ograniasz zbytnio tematu.
~Daiquiri w zasadzie wyczerpała temat.
Na forum jest masa tematów o OOP od podstaw, użyj wyszukiwarki, jak będziesz miał konkretny problem, chętnie pomożemy.

Zamykam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.