Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> CMS - błędy
jacked
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 2
Dołączył: 6.06.2011

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


Cześć, kupiłem książkę "jak stworzyć własny CMS" Łukasza Sosny. Z ciekawości, chciałem sprawdzić, jaki system przygotuję, za pomocą książki. Więc zainstalowałem go na lokalnym serwerze. I mam pewien problem. Mianowicie błędy w php, nie wiem co jest nie tak, poprawnie uzupełniłem plik konfiguracyjny do połączenia z bazą danych, zaimportowałem plik z poleceniami mySQL, tworzą one po porostu odpowiednie tabele i rekordy.
Tot lista błędów:
(IMG:http://ubplanet.pl/forum/uploads/images/UBPlanet-1308328890-U15373.png)

To jest plik silnik.php:
  1. <?php
  2.  
  3.  
  4. session_register('uzy_id');
  5. session_register('uzy_nazwa');
  6. session_register('uzy_email');
  7. session_register('uzy_szablon');
  8. session_register('uzy_jezyk');
  9. session_register('uzy_czy_admin');
  10. session_register('uzy_zalogowany');
  11.  
  12. require('./konfiguracja.php');
  13.  
  14. if($BazaDanych == 'mysql')
  15. {
  16. include('./silnik/sterownik_mysql.php');
  17. }
  18.  
  19. $Polaczenie = PolaczZBaza($HostZBaza,$LoginUzytkownika,$HasloUzytkownika);
  20.  
  21. if($Polaczenie == FALSE)
  22. {
  23. echo 'Połączenie z bazą danych nie powiodło się';
  24. exit();
  25. }
  26.  
  27. $WybieranieBazy = WybierzBazeDanych($NazwaBazyDanych);
  28.  
  29. if($WybieranieBazy == FALSE)
  30. {
  31. echo 'Wybieranie bazy danych nie powiodło się';
  32. exit();
  33. }
  34.  
  35. function PokazBlad($Wiadomosc,$Plik,$Linia,$ZapytanieSQL)
  36. {
  37. echo 'Błąd bazy danych';
  38. echo '<br />';
  39. echo 'W pliku: '.$Plik;
  40. echo '<br />';
  41. echo 'W linii: '.$Linia;
  42. echo '<br />';
  43. echo 'W zapytaniu: '.$ZapytanieSQL;
  44. echo '<br />';
  45. echo 'Informacje od bazy danych:';
  46. echo PokazBladBazyDanych();
  47. }
  48.  
  49. if($BazaDanych == 'mysql')
  50. {
  51. $ZapytanieKonfiguracja = 'SELECT konfig_nazwa,konfig_wartosc FROM '.$PrefixTabelek.'konfig';
  52. }
  53.  
  54. if(!WykonajZapytanie($ZapytanieKonfiguracja))
  55. {
  56. PokazBlad('Błąd w zapytaniu',__FILE__,__LINE__,$ZapytanieKonfiguracja);
  57. }
  58.  
  59. $Wynik = PobierzWynik();
  60. $IleWynikow = PobierzIlosc();
  61.  
  62. for($i=0;$i<$IleWynikow;$i++)
  63. {
  64. $KluczWyniku = $Wynik[$i]['konfig_nazwa'];
  65. $KonfiguracjaWitryny[$KluczWyniku] = $Wynik[$i]['konfig_wartosc'];
  66. }
  67.  
  68. if(empty($_SESSION['uzy_id']))
  69. {
  70. $_SESSION['uzy_id'] = '';
  71. $_SESSION['uzy_nazwa'] = '';
  72. $_SESSION['uzy_email'] = '';
  73. $_SESSION['uzy_szablon'] = $KonfiguracjaWitryny['dt'];
  74. $_SESSION['uzy_jezyk'] = $KonfiguracjaWitryny['dl'];
  75. $_SESSION['uzy_czy_admin'] = '';
  76. $_SESSION['uzy_zalogowany'] = '';
  77. }
  78.  
  79. if($KonfiguracjaWitryny['blip'] == 'tak')
  80. {
  81. if($BazaDanych == 'mysql')
  82. {
  83. $ZapytanieIP = 'SELECT ip_numer FROM '.$PrefixTabelek.'banujip';
  84. }
  85.  
  86. if(!WykonajZapytanie($ZapytanieIP))
  87. {
  88. PokazBlad('Błąd w zapytaniu',__FILE__,__LINE__,$ZapytanieIP);
  89. }
  90.  
  91. $Wynik = PobierzWynik();
  92. $IleWynikow = PobierzIlosc();
  93.  
  94. for($i=0;$i<$IleWynikow;$i++)
  95. {
  96. if($Wynik[$i]['ip_numer'] == $_SERVER['REMOTE_ADDR'])
  97. {
  98. include('./strony_html/'.addslashes($_SESSION['uzy_jezyk']).'/zbanowany_ip.html');
  99. exit();
  100. }
  101. }
  102. }
  103.  
  104. if(!include('./jezyki/'.addslashes($_SESSION['uzy_jezyk']).'/jezyk.php'))
  105. {
  106. echo 'Nie mogłem włączyć tego języka: '.addslashes($_SESSION['uzy_jezyk']);
  107. exit();
  108. }
  109.  
  110.  
  111. function DrukujSzablonStrony()
  112. {
  113. global $CMSModul;
  114. global $StronaTytul;
  115. global $SlowaKuczowe;
  116. global $OpisStrony;
  117.  
  118. if(!include('./szablony/'.addslashes($_SESSION['uzy_szablon']).'/szablon.php'))
  119. {
  120. echo 'Nie mogłem włączyć tego szabonu: '.addslashes($_SESSION['uzy_szablon']);
  121. exit();
  122. }
  123. }
  124.  
  125.  
  126. function DrukujNaglowek($StronaTytul,$SlowaKluczowe,$OpisStrony)
  127. {
  128. global $KonfiguracjaWitryny;
  129. global $JezykStrony;
  130. echo '<?xml version="1.0" encoding="'.$JezykStrony['kodowanie'].'"?>';
  131.  
  132. echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"';
  133. echo ' "http://localhost/dtd/xhtml11.dtd">';
  134. echo '<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="'.$JezykStrony['jezyk'].'">';
  135. echo '<head>';
  136. echo '<meta http-equiv="Content-Type" content="text/html; charset='.$JezykStrony['kodowanie'].'" />';
  137. echo '<meta http-equiv="Content-language" content="'.$JezykStrony['jezyk_okresl'].'" />';
  138. echo '<meta name="copyright" content="LinuxMag.pl PRO CMS" />';
  139. echo '<meta name="description" content="'.$OpisStrony.'" />';
  140. echo '<meta name="keywords" content="'.$SlowaKluczowe.'" />';
  141. echo '<meta name="robots" content="all" />';
  142. echo '<meta name="rating" content="general" />';
  143. echo '<meta name="resource-type" content="document" />';
  144. echo '<meta name="generator" content="LinuxMag.pl PRO CMS" /> ';
  145. echo '<link rel="stylesheet" type="text/css" href="szablony/'.addslashes($_SESSION['uzy_szablon']).'/style.css" />';
  146. echo '<title>'.$StronaTytul.''.$KonfiguracjaWitryny['nazwa'].'</title>';
  147. echo '</head>';
  148. echo '<body>';
  149.  
  150. echo '<table class="tabela_logo">';
  151. echo '<tr>';
  152. echo '<td class="komorka_logo"></td>';
  153. echo '</tr>';
  154. echo '</table>';
  155. }
  156.  
  157. function DrukujSciezke()
  158. {
  159. global $URIDlaModulu;
  160. echo $URIDlaModulu;
  161. }
  162.  
  163. function DrukujLeweMenu()
  164. {
  165.  
  166. global $BazaDanych;
  167. global $PrefixTabelek;
  168.  
  169. if($BazaDanych == 'mysql')
  170. {
  171. $ZapytanieBlok = 'SELECT * FROM '.$PrefixTabelek.'bloki
  172. WHERE
  173. blok_strona = "l" AND
  174. blok_aktywny = "t"
  175. ORDER BY
  176. blok_pozycja ASC';
  177. }
  178.  
  179. if(!WykonajZapytanie($ZapytanieBlok))
  180. {
  181. PokazBlad('Błąd w zapytaniu',__FILE__,__LINE__,$ZapytanieBlok);
  182. }
  183.  
  184. $Wynik = PobierzWynik();
  185. $IleWynikow = PobierzIlosc();
  186.  
  187. echo '<table class="l_menu" cellpadding="0" cellspacing="0">';
  188.  
  189. for($i=0;$i<$IleWynikow;$i++)
  190. {
  191. echo '<tr>';
  192. echo '<td class="l_1">'.stripslashes($Wynik[$i]['blok_pokaz']).'</td>';
  193. echo '</tr>';
  194. echo '<tr>';
  195. echo '<td class="l_2">';
  196. include('./bloki/'.$Wynik[$i]['blok_nazwa'].'/'.$Wynik[$i]['blok_nazwa'].'.php');
  197. echo '</td>';
  198. echo '</tr>';
  199. echo '<tr>';
  200. echo '<td class="l_3"></td>';
  201. echo '</tr>';
  202. }
  203.  
  204. echo '</table>';
  205.  
  206. }
  207.  
  208. function DrukujPraweMenu()
  209. {
  210. global $BazaDanych;
  211. global $PrefixTabelek;
  212.  
  213. if($BazaDanych == 'mysql')
  214. {
  215. $ZapytanieBlok = 'SELECT * FROM '.$PrefixTabelek.'bloki
  216. WHERE
  217. blok_strona = "p" AND
  218. blok_aktywny = "t"
  219. ORDER BY
  220. blok_pozycja ASC';
  221. }
  222.  
  223. if(!WykonajZapytanie($ZapytanieBlok))
  224. {
  225. PokazBlad('Błąd w zapytaniu',__FILE__,__LINE__,$ZapytanieBlok);
  226. }
  227.  
  228. $Wynik = PobierzWynik();
  229. $IleWynikow = PobierzIlosc();
  230.  
  231. echo '<table class="p_menu" cellpadding="0" cellspacing="0">';
  232.  
  233. for($i=0;$i<$IleWynikow;$i++)
  234. {
  235. echo '<tr>';
  236. echo '<td class="p_1">'.stripslashes($Wynik[$i]['blok_pokaz']).'</td>';
  237. echo '</tr>';
  238. echo '<tr>';
  239. echo '<td class="p_2">';
  240. include('./bloki/'.$Wynik[$i]['blok_nazwa'].'/'.$Wynik[$i]['blok_nazwa'].'.php');
  241. echo '</td>';
  242. echo '</tr>';
  243. echo '<tr>';
  244. echo '<td class="p_3"></td>';
  245. echo '</tr>';
  246. }
  247.  
  248. echo '</table>';
  249. }
  250.  
  251. function DrukujStopke()
  252. {
  253. echo '<div class="stopka">';
  254. echo 'Copyright &copy; 2006 <a href="http://linuxmag.pl">LinuxMag.pl PRO CMS</a>';
  255. echo '</div>';
  256. echo '</body>';
  257. echo '</html>';
  258. }
  259.  
  260. function DrukujBlad($TrescInformacji)
  261. {
  262. global $JezykStrony;
  263.  
  264. echo '<div class="niepoprawnie">';
  265. echo $TrescInformacji;
  266. echo '<br />';
  267. echo $JezykStrony['wroc_blad'];
  268. echo '</div>';
  269. }
  270.  
  271. function DrukujPoprawne($TrescInformacji)
  272. {
  273. global $JezykStrony;
  274.  
  275. echo '<div class="poprawnie">';
  276. echo $TrescInformacji;
  277. echo '<br />';
  278. echo $JezykStrony['porawnie_idz_dalej'];
  279. echo '</div>';
  280. }
  281.  
  282. function PokazOknoLogowania()
  283. {
  284. global $JezykAdmin;
  285. ?>
  286. <form method="post" action="zaloguj.php">
  287. <table>
  288. <tr>
  289. <td><?php echo $JezykAdmin['nazwa_konta']; ?></td><td><input type="text" name="login_konta"></td>
  290. </tr>
  291. <tr>
  292. <td><?php echo $JezykAdmin['haso_dostepu']; ?></td><td><input type="password" name="haslo_konta"></td>
  293. </tr>
  294. <tr>
  295. <td></td><td>
  296. <input type="hidden" name="logowanie" value="tak">
  297. <input type="submit" value="<?php echo $JezykAdmin['zaloguj_mnie']; ?>"></td>
  298. </tr>
  299. </table>
  300. </form>
  301. <?php
  302. }
  303.  
  304. ?>

A to plik sterownik_mysql.php:
  1. <?php
  2.  
  3. function PolaczZBaza($HostZBaza,$LoginUzytkownika,$HasloUzytkownika)
  4. {
  5. if(mysql_connect($HostZBaza,$LoginUzytkownika,$HasloUzytkownika))
  6. {
  7. return TRUE;
  8. }
  9. else
  10. {
  11. return FALSE;
  12. }
  13. }
  14.  
  15. function WybierzBazeDanych($NazwaBazyDanych)
  16. {
  17. if(mysql_select_db($NazwaBazyDanych))
  18. {
  19. return TRUE;
  20. }
  21. else
  22. {
  23. return FALSE;
  24. }
  25. }
  26.  
  27. function WykonajZapytanie($ZapytanieDoBazy)
  28. {
  29. global $WynikZapytania;
  30.  
  31. $WynikZapytania = mysql_query($ZapytanieDoBazy);
  32.  
  33. if($WynikZapytania)
  34. {
  35. return TRUE;
  36. }
  37. else
  38. {
  39. return FALSE;
  40. }
  41. }
  42.  
  43. function PokazBladBazyDanych()
  44. {
  45.  
  46. $Blad['text'] = mysql_error();
  47. $Blad['number'] = mysql_errno();
  48.  
  49. $InformacjaOBledzie = 'Nazwa: '.$Blad['text'].' Numer: '.$Blad['number'];
  50.  
  51. return $InformacjaOBledzie;
  52. }
  53.  
  54. function PobierzWynik()
  55. {
  56.  
  57. global $WynikZapytania;
  58.  
  59. while($wiersz = mysql_fetch_array($WynikZapytania,MYSQL_ASSOC))
  60. {
  61. $RezultatZapytania[] = $wiersz;
  62. }
  63.  
  64. return $RezultatZapytania;
  65. }
  66.  
  67. function PobierzIlosc()
  68. {
  69. global $WynikZapytania;
  70.  
  71. $IloscRekordow = mysql_num_rows($WynikZapytania);
  72.  
  73. return $IloscRekordow;
  74. }
  75.  
  76. ?>


Strasznie mnie to zniechęca - będę pisał taki CMS, a potem okaże się że on nie działa, są jakieś błędy, proszę o pomoc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jacked
post
Post #2





Grupa: Zarejestrowani
Postów: 29
Pomógł: 2
Dołączył: 6.06.2011

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


Okej, No wiadomo że ksiażki nie moha być aktualne zawsze - zwłaszcza jesli chodzi o informaryke gdzie wszysto stale się rozwija. Więc... co innego mi zaproponujesz zeby nauczyć się tworzyć tego rodzaju systemy CMS? Taki wlasny CMS to niezwykle przydatna rzecz.
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: 10.10.2025 - 07:01