Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [skrypt]Proszę o audyt kodu
Forum PHP.pl > Inne > Oceny
tyfusek
Witam.
Chciałbym zwrócić się do Was z prośbą o sprawdzenie poprawności tego
kodu. Mam zamiar zgromadzić bardzo dużo użytkowników na tej stronie i nie
chcę, aby strona zawierała jakieś błędy.
Proszę o pomoc.
Chciałbym również, abyście "nakierowali mnie" na poprawne napisanie tego kodu.
Będę bardzo wdzięczny:




plik nitrous.tmt zawiera elementy {baner} {logowanie} {tresc}



Plik HtmlTemplate.class
  1. <?php
  2.  
  3. class HtmlTemplate {
  4.  
  5.         // Ustawienie atrybutów.
  6.         var $template;
  7.         var $dzial;
  8.         var $add_dzial;
  9.         var $miejsce;
  10.         var $html;
  11.         var $parameters = array();
  12.  
  13.  
  14.         function HtmlTemplate ($template) { // Ta funkcja wybiera szablon, który będzie wykorzystywany.
  15.                 $this->template = $template;
  16.                 $this->html = implode (&#092;"\", (file($this->template))); // Wczytanie szablonu do tablicy, a następnie utworzenie ciągu znaków.
  17.         }
  18.  
  19.  
  20.  
  21.         function SetParameter ($variable, $value) { // Funkcja ustawia odpowiednie wartości.
  22.                 $this->parameters[$variable] = $value;
  23.         }
  24.  
  25.  
  26.  
  27.  
  28.         function CreatePage () { // Ta funkcja wykonuje większość pracy.
  29.  
  30.                 foreach ($this->parameters as $key => $value) { // Pętla dla wszystkich parametrów i ustawienie wartości zmiennych na odpowiednie 
  31. artości.
  32.                         $template_name = '{' . $key . '}';
  33.                         $this->html = str_replace ($template_name, $value, $this->html);
  34.                 }
  35.                 echo $this->html;
  36.         }
  37.  
  38.  
  39.  
  40.         function dodaj (&$dzial, &$add_dzial, $miejsce='dol') { // Ta funkcja dodaje zawartosc do dzialow.
  41.                switch($miejsce)
  42.                {
  43.                   case 'dol';
  44.                       $dzial .= &#092;"<br>\". $add_dzial;
  45.                       break;
  46.                   case 'gora';
  47.                       $dzial = $add_dzial.''.$dzial;
  48.                       break;
  49.                }
  50.           return $dzial;
  51.         }
  52.         function zplikudozmiennej(&$plikie, &$zmienna1) {
  53.               $fp = fopen($plikie, r);
  54.               $zmienna1 = fread($fp, filesize($plikie));
  55.               fclose($fp);
  56.         }
  57.  
  58. }
  59.  
  60. ?>




Nastepny pliczek news.php (jak narazie główny):
  1. <?php
  2.  
  3.             require_once &#092;"inc/HtmlTemplate.class\";           // Włączenie klasy macierzystej.
  4.             $page = new HtmlTemplate (&#092;"tmts/nitrous1.tmt\");; // Utworzenie egzemplarza i wskazanie szablonu.
  5.  
  6.  
  7.  
  8. # LICZNIKI----------------------------------------------------------------
  9. # jakiestam beda jeszcze biggrin.gif .... pomysle
  10. # licnziki----------------------------------------------------------------
  11.  
  12. $txt = &#092;"costam\";
  13. $kod_banera = '<img border=\"1\" src=\"http://nitrous.pl/cyklimprez.gif\" width=\"400\" height=\"60\">';
  14.  
  15.  
  16.  
  17. $page->dodaj ($tresc, $txt);
  18. $page->dodaj ($baner, $kod_banera);
  19.  
  20. $plikie = &#092;"inc/logowanie_form.inc\";
  21.  
  22. $page->zplikudozmiennej($plikie, $jajco);
  23.  
  24.  
  25. $page->dodaj ($tresc, $jajco);
  26.  
  27.  
  28.  
  29.  
  30. // wrzucenie zawartosci strony do szablonu ------------------------------------
  31.  
  32. $page->SetParameter (logowanie, $logowanie);
  33. $page->SetParameter (tresc,     $tresc    ); // Ustawienie treści strony.
  34. $page->SetParameter (baner,     $baner    ); // Wybranie odpowiedniego banera tongue.gif (czszegóły w \"płatności\")
  35.  
  36.  
  37. $page->CreatePage();                         // Wysłanie strony do przeglądarki.
  38.  
  39. ?>




i plik instalacyjny install.php(niedokonczona lista modeli i marek):


  1. <?php
  2.  
  3. // Instalacja strony: utworzenie baz danych
  4.  
  5. $db_info[username] = &#092;"admin\";
  6. $db_info[password] = &#092;"krasnal\";
  7. $db_info[host] = &#092;"localhost\";
  8. $db_info[dbname] = &#092;"nitrous\";
  9.  
  10. $db_connection = mysql_connect ($db_info[host], $db_info[username], $db_info[password]) or die (mysql_error());
  11.  
  12. mysql_query(&#092;"CREATE DATABASE nitrous\"); //_______________________________ nowa baza danych
  13.  
  14.  
  15.  
  16. mysql_select_db ('nitrous', $db_connection) or die (mysql_error());
  17.  
  18. //---------------------------------------------------------------------------   Urzytkownicy na stronie
  19. $sql = '
  20. CREATE TABLE urzytkownicy(
  21.                       userid int NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  22.                       nick char( 15 ) ,
  23.                       haslo char( 20 ) ,
  24.                       email char( 30 ) ,
  25.                       wojewodztwo char( 20 ) ,
  26.                       miasto char( 30 ) ,
  27.                       samochod char( 10 ) ,
  28.                       opis text,
  29.                       modyfikacje text,
  30.                       DATA timestamp
  31. )';
  32.  
  33.  
  34. //-----------------------------------------------------------------------------  Baza fotek;)
  35. $sql = '
  36. CREATE TABLE fotki(
  37.                       fotkaid int AUTO_INCREMENT PRIMARY KEY ,
  38.                       userid int,
  39.                       modelid char( 20 ) NOT NULL ,
  40.                       DATA timestamp
  41. )';
  42.  
  43.  
  44. //-----------------------------------------------------------------------------  Komentarze do zdjec
  45. $sql = '
  46. CREATE TABLE komentarze(
  47.                       komentarzid int AUTO_INCREMENT PRIMARY KEY ,
  48.                       userid int NOT NULL,
  49.                       nick char( 30 ) NOT NULL ,
  50.                       komentarz text NOT NULL,
  51.                       DATA timestamp
  52. )';
  53.  
  54.  
  55.  
  56. //-----------------------------------------------------------------------------  Licznik
  57. $sql = '
  58. CREATE TABLE licznik(
  59.                     licznikid int AUTO_INCREMENT PRIMARY KEY ,
  60.                     ip varchar (15) NOT NULL,
  61.                     strona char( 20 ) NOT NULL ,
  62.                     DATA timestamp
  63. )';
  64.  
  65.  
  66. //-----------------------------------------------------------------------------   MARKI
  67. $sql = '
  68. CREATE TABLE marki(
  69.                       markaid int AUTO_INCREMENT PRIMARY KEY ,
  70.                       nazwa char( 30 ) NOT NULL
  71. )';
  72.  
  73. //-----------------------------------------------------------------------------   Modele
  74. $sql = '
  75. CREATE TABLE modele(
  76.                       modelid int AUTO_INCREMENT PRIMARY KEY ,
  77.                       markaid int NOT NULL,
  78.                       nazwa char( 30 ) NOT NULL
  79. )';
  80.  
  81.  
  82.  
  83. //-----------------------------------------------------------------------------
  84. mysql_query(&#092;"insert into marki set markaid = '1' , nazwa = 'Alfa Romeo'\");   // ALFA ROMEO
  85. mysql_query(&#092;"insert into modele set nazwa = '33', markaid = '1'  \");
  86. mysql_query(&#092;"insert into modele set nazwa = '75', markaid = '1'  \");
  87. mysql_query(&#092;"insert into modele set nazwa = '145', markaid = '1' \");
  88. mysql_query(&#092;"insert into modele set nazwa = '146', markaid = '1' \");
  89. mysql_query(&#092;"insert into modele set nazwa = '147', markaid = '1' \");
  90. mysql_query(&#092;"insert into modele set nazwa = '155', markaid = '1' \");
  91. mysql_query(&#092;"insert into modele set nazwa = '156', markaid = '1' \");
  92. mysql_query(&#092;"insert into modele set nazwa = '164', markaid = '1' \");
  93. mysql_query(&#092;"insert into modele set nazwa = '166', markaid = '1' \");
  94. mysql_query(&#092;"insert into modele set nazwa = 'GTV', markaid = '1' \");
  95. mysql_query(&#092;"insert into modele set nazwa = 'inne', markaid = '1'\");
  96. mysql_query(&#092;"insert into marki set markaid = '2' , nazwa = 'Audi'\");     // AUDI
  97. mysql_query(&#092;"insert into modele set nazwa = '80/90' , markaid = '2'\");
  98. mysql_query(&#092;"insert into modele set nazwa = '100/200' , markaid = '2'\");
  99. mysql_query(&#092;"insert into modele set nazwa = 'A2'     , markaid = '2'\");
  100. mysql_query(&#092;"insert into modele set nazwa = 'A3/S3'  , markaid = '2'\");
  101. mysql_query(&#092;"insert into modele set nazwa = 'A4/S4', markaid = '2'\");
  102. mysql_query(&#092;"insert into modele set nazwa = 'A6/S6' , markaid = '2' \");
  103. mysql_query(&#092;"insert into modele set nazwa = 'A8/S8'  , markaid = '2'\");
  104. mysql_query(&#092;"insert into modele set nazwa = 'TT', markaid = '2'\");
  105. mysql_query(&#092;"insert into modele set nazwa = 'V8', markaid = '2'\");
  106. mysql_query(&#092;"insert into modele set nazwa = 'inne', markaid = '2'\");
  107.  
  108.  
  109.  
  110. echo '<br>';
  111.  
  112. mysql_close($db_connection);
  113.  
  114. print (&#092;"ZAINSTALOWANO STRONE NA SERWERZE!!\");
  115.  
  116.  
  117.  
  118. ?>
dr_bonzo
Brak obslugi bledow:
  1. <?php
  2. $this->html = implode (&#092;"\", (file($this->template))); // Wczytanie szablonu do
  3. ?>

a co jesli tego pliku nie ma? i konstruktor nie powinien wyrzucac wyjatkow/generowac bledow.
nospor
W install.php tworzysz wiele tabel i dajesz mysql_query($sql); Powininieneś sprawdzać, czy oby na pewno się utworzyły, czyli co zwróciło ci mysql_query($sql);
Bo może się zdarzyć, że się nie utworzy, a ty na koncu walisz że się zainstalwoalo
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.