Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sprawdzenie skryptu....
Forum PHP.pl > Forum > Przedszkole
xxdrago
Witam, od jakiegoś czasu pisze tak (dałem niżej kod), chciałbym to jakoś poprawić możecie coś doradzić? Co mam poćwiczyć? smile.gif


  1. <?php
  2.  
  3. require ('includes/BbCode.php');
  4.  
  5. $bb = new BbCode();
  6.  
  7. $nazwa_Podstrony = 'Admin'; // nazwa podstrony do identyfikacji lub wyswietlania
  8.  
  9. include('includes/function.php'); // Dodanie funkcji
  10. include("includes/template.php"); // skrypt klasy obslugujacy pliki html lub inne
  11.  
  12. include('hs_header.php'); // dodanie naglowka
  13.  
  14. $filename = "admin.php"; // nazwa pliku wykonawczego
  15. $template_filename = "admin.html"; // nazwa pliku html. Moze to byc tez .tpl
  16. $tpl = new Template('templates/lang-pl/'); //folder w ktorym znajduja sie pliki strony typu tpl lub html
  17. $tpl->load_file('admin.html', 'admin'); // tak ladujemy plik do przetlumaczenia
  18.  
  19.  
  20.  
  21. if (isset($_GET['zarzadzaj']) && $_GET['zarzadzaj']) {
  22.  
  23. if ($_GET['zarzadzaj'] == 'newsy') {
  24. if (isset($_GET['akcja']) && $_GET['akcja']) {
  25. // Jezeli wybrano akcje
  26. $tpl->set_var('POKAZ_N', ''); // Ukrywamy zarzadzanie newsami...
  27.  
  28.  
  29.  
  30. if ($_GET['akcja'] == 'dodaj') {
  31. // Jezeli chcemy dodac
  32.  
  33. if (isset($_SESSION['komunikat_news_brak']) && $_SESSION['komunikat_news_brak']) {
  34. $_SESSION['komunikat_news_brak'] = false;
  35. } else {
  36. $tpl->set_var('KOMUNIKATY_BRAK', '');
  37. }
  38.  
  39. if (isset($_POST['save']) && $_POST['save']) {
  40. if (isset($_POST['nazwa']) && isset($_POST['wyslij']) && $_POST['nazwa'] && $_POST['wyslij']) {
  41.  
  42.  
  43. $zapr = 'INSERT INTO newsy SET nazwa="' . $_POST['nazwa'] . '", tresc="' . $_POST['wyslij'] . '", data="' . time() . '", autor="' . $_SESSION["nick"] . '"';
  44. $db->query($zapr);
  45. // Dodajemy do sesji komunikaty..
  46. $_SESSION['komunikat_news_ok'] = true;
  47. $_SESSION['komunikat'] = true;
  48. header("location:admin.php?zarzadzaj=newsy");
  49. } else {
  50. $_SESSION['komunikat_news_brak'] = ture;
  51. header("location:admin.php?zarzadzaj=newsy&akcja=dodaj");
  52. }
  53. }
  54. }
  55.  
  56. if (isset($_GET['id']) && $_GET['id']) {
  57.  
  58. if (zabezpieczenie_sql($_GET['id']) == true) {
  59.  
  60. $tpl->set_var('ZABEZPIECZENIE', '');
  61. $tpl->set_var('DODAJ_N', '');
  62. $tpl->set_var('CZYISTNIEJE', '');
  63. $tpl->set_var('KOMUNIKATY_OK', '');
  64.  
  65. // Trzeba sprawdzic czy to id istnieje ...
  66. $sprawdzz = $db->query('SELECT * FROM `newsy` WHERE id =' . $_GET["id"] . '');
  67. if ($sprawdzz->num_rows == 1) {
  68. if ($_GET['akcja'] == 'usun') {
  69. $db->query('DELETE FROM `newsy` WHERE `id` = "' . $_GET["id"] . '"');
  70.  
  71. $_SESSION['komunikat_news_usuniety'] = true;
  72. $_SESSION['komunikat'] = true;
  73. header("location:admin.php?zarzadzaj=newsy");
  74. }
  75. if ($_GET['akcja'] == 'edytuj') {
  76. // Jezeli chcemy edytowac
  77. }
  78. } else {
  79. $_SESSION['komunikat_news_brakid'] = true;
  80. $_SESSION['komunikat'] = true;
  81. header("location:admin.php?zarzadzaj=newsy");
  82. }
  83. }
  84. $tpl->set_var('KOMUNIKATY_OK', '');
  85. $tpl->set_var('DODAJ_N', '');
  86. }
  87. }
  88. else {
  89.  
  90. $tpl->set_var('DODAJ_N', '');
  91.  
  92. if (isset($_SESSION['komunikat']) && $_SESSION['komunikat']) {
  93. if (isset($_SESSION['komunikat_news_brakid']) && $_SESSION['komunikat_news_brakid']) {
  94.  
  95. $_SESSION['komunikat_news_brakid'] = false;
  96. $_SESSION['komunikat'] = false;
  97. } else {
  98. $tpl->set_var('CZYISTNIEJE', '');
  99. }
  100. if (isset($_SESSION['komunikat_news_usuniety']) && $_SESSION['komunikat_news_usuniety']) {
  101. $_SESSION['komunikat_news_usuniety'] = false;
  102. $_SESSION['komunikat'] = false;
  103. } else {
  104. $tpl->set_var('KOMUNIKATY_USUNIETY', '');
  105. }
  106. } else {
  107. $tpl->set_var('KOMUNIKATY_OK', '');
  108. }
  109.  
  110. // Wyswietlamy zarzadzanie newsami
  111. $zap_news = $db->query('SELECT * FROM newsy');
  112. $tpl->set_var('ZABEZPIECZENIE', '');
  113. while ($newsy_admin = $zap_news->fetch_assoc()) {
  114. $tpl->set_var('data', date("d-m-Y H:i", $newsy_admin['data']));
  115. $tpl->set_var('autor', $newsy_admin['autor']);
  116. $tpl->set_var('nazwa', $newsy_admin['nazwa']);
  117. $tpl->set_var('id', $newsy_admin['id']);
  118. $tpl->parse("NEWS", true);
  119. }
  120. }
  121. }
  122. }
  123. $tpl->pparse("admin", false); // parsowanie calosci. czyli tego wszystkiego co bylo wczesniej w calym dokumencie
  124.  
  125. include('hs_stopka.php'); // dodanie stopki
  126. ?>


Sory za tak "długi kod" ...
Daimos
Nie ma za dużo do oceniania, skoro działa, no to działa, tyle można powiedzieć, bo rozumiem jest to kod napisany w celu nauki PHP. Jak na podstawy to ok, oczywiście rzuca się w oczy:
  1. $zapr = 'INSERT INTO newsy SET nazwa="' . $_POST['nazwa'] . '", tresc="' . $_POST['wyslij'] . '", data="' . time() . '", autor="' . $_SESSION["nick"] . '"';

post żywcem do zapytania? smile.gif
time() - taka ciekawostka, mysql też potrafi zwrócić unixowy timestamp, poza tym zdecydowanie lepiej jest korzystać z typu dat, które daje nam sama baza. date, datetime, jest kilka, a umożliwiają wiele operacji z poziomu zapytania, których nie zrobisz, mając jedynie sekundy, albo zrobisz, ale 10x wolniej.
Co do komentarzy, fajnie że są, ale weź pod uwagę, że niektóre (dobre wink.gif ) edytory kodu, korzystają z tych komentarzy częściej niż człowiek, dlatego dobrze jest stosować pewnie standardy w tym kierunku.

Ogólnie, kod to taki miszmasz, czas chyba najwyższy zacząć zagłębiać się we wzorce projektowe i odwiedzać dział na forum: Object-oriented programming wink.gif
xxdrago
Daimos, to jest w panelu administratora do którego użytkownik niema dostępu...

Mógłbyś napisać co masz na mysli:
Cytat
Co do komentarzy, fajnie że są, ale weź pod uwagę, że niektóre (dobre ) edytory kodu, korzystają z tych komentarzy częściej niż człowiek, dlatego dobrze jest stosować pewnie standardy w tym kierunku.
?
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.