Razdvajanje php_a od html_a

Razdvajanje php_a od html_a

offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

Pozdrav!

Moželi mi neko reći što je potrebno razvajati html od php_a, I dali se može razdvojiti da ne koristim smarty?

Hvala na odgovoru!



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • lnenad  Male
  • Stručni saradnik
    Web
  • Nenad
  • Arhitetak
  • Pridružio: 16 Jan 2007
  • Poruke: 2860
  • Gde živiš: Bijeljina

?

Ako mislis na razdvajanje phpa od htmla u dokumentu, onda se mora razdvojiti sa <?php ?> tagom da bi sam server znao koji kod se izvrsava, a koji ne.



offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Smarty je najjednostavniji nacin, a potrebno je samo nekoliko sati da se savlada.
A potrebno je odvajati radi preglednosti.
Najcesce onaj ko radi php, ne radi i dizajn, tako da je bolje da se html (dizajn) odvoji od php koda kako programer ne bi poremetio dizajn a dizajner kod.

offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

a kako je odvojeno na smf forumu u dizajnu ima php koda.

Šta misli te dali valja vako odvajati dizajn od php:

Napravim folder tema i u folder tema datoteku predlozak.php i u tu datoteku dodam vrh (header) i dno (foter) stranice.
<?php function vrh_stranice_predlozak() {    global $ime_stranice, $opis_stranice, $kljucne_rijeci_stranice; ?> <html>    <head>        </head>       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />       <title><?php echo $ime_stranice ?></title>       <meta name="description" content="<?php echo $opis_stranice ?>" />       <meta name="keywords" content="<?php echo $kljucne_rijeci_stranice ?>" />    <body>       <div>Vrh stranice</div> <?php } function dno_stranice_predlozak() { ?>       <div>Dno stranice</div>       </body> </html> <?php } ?>

e sad napravim još jednu datoteku login_predlozak.php u folderu tema
<?php function login_stranica_predlozak() { ?> <div> <form action="" method="post">    <table width="100%" cellpadding="5" cellspacing="5" border="0">       <tr>          <td class="mali_text"><b>Korisničko ime:</b><br /><input size="35" type="text" name="korisnicko_ime" /></td>       </tr>       <tr>          <td class="mali_text"><b>Lozinka:</b><br /><input size="35" type="password" name="lozinka" /></td>       </tr>       <tr>          <td><input type="submit" name="prijavi_se" value="Prijavi se" /></td>       </tr>    </table> </form> </div> <?php } ?>

i to je npr. dizajn

e sad php kod:

u root napravim datoteku include.php i u nju includam predlozke iz tema
error_reporting(E_ALL); include'tema/predlozak.php'; include'tema/login_predlozak.php';

i kad sam to napravio radim stranicu za login (login.php)
require'include.php'; //Poziva include.php $ime_stranice='Login stranica'; //Ime stranice. $opis_stranice='stranica za login'; //Opis stranice. $kljucne_rijeci_stranice='login, uloguj, prijavi'; //Ključne riječi stranice. //Provjerava dali je poslat submit if(!isset($_POST['prijavi_se'])) {        vrh_stranice_predlozak();    login_stranica_predlozak();    dno_stranice_predlozak();    exit(); }


Šta mislite dali valja vako odvajati dizajn od phpa

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Sve zavisi od strukture sajta i logike programiranja.
Ja obično pravim tako što pozovem header.php i footer.php

U header-u se pozivaju sve funkcije, uključujući i jezičke datoteke i stilove.
Zatim pozivam po potrebi fajlove iz template direktorijuma koji obično sadrže HTML kod. U template direktorijumu imam fajl functions.php koji izvršava funkcije za template fajlove i koji se uvek poziva sa template-om.

Takođe, po potrebi kreiram i "mod" direktorijum gde smeštam modove koji se automatski učitavaju i preko funkcije hook-uju (po potrebi) za header, sadržaj, footer, komentar formu, glavni meni, sidebar-ove itd.

offline
  • susok  Male
  • Novi MyCity građanin
  • Pridružio: 03 Sep 2009
  • Poruke: 23
  • Gde živiš: BH

evo vako sam odvojio dizajn na stranici gdje mi se prikazuju mysql greške koje se dese:

PHP kod:
<?php /***************************************** * mysql_greske.php                       * ****************************************** * Autor: Sokolušić Suad                  * *****************************************/ require'include.php'; //Poziva include.php //Provjerava dali je korisnik prijavljen i dali ima status "a" administrator. if(empty($_SESSION['id_korisnika'])||(provjerava_status_korisnika()!='a')) {    header('Location:'.$domena_sajta);    exit(); } /*Funkcija služi da ispiše ime, opis i ključne riječi na stranici gdje se prikazuju greške. Funkcija se nalazi u funkcije/funkcije.php */ greske_ime_opis_kljucne_rijeci_stranice(); //Provjerava dali je poslato izbriši (id) od mysql greške, ako jest briše tu grešku. if(isset($_GET['izbrisi'])) {    $id_greske=(int)$_GET['izbrisi'];    $brise_mysql_gresku="DELETE FROM mysql_greske WHERE id_mysql_greske=$id_greske";    if(!mysql_query($brise_mysql_gresku))    {       vrh_predlozak();       predlozak1('Nije izvršena provjera u bazi!<br /><b>Upit:</b> '.$brise_mysql_gresku.'<br /><b>Mysql greška '.mysql_errno().':</b> '.mysql_error(),'» Greška');       dno_predlozak();       exit();    } } //Ako je poslato izbrisi_sve, onda briše sve mysql greške iz baze. if(isset($_GET['izbrisi_sve'])) {    $brise_mysql_greske_sve="DELETE FROM mysql_greske";    if(!mysql_query($brise_mysql_greske_sve))    {       vrh_predlozak();       predlozak1('Nije izvršena provjera u bazi!<br /><b>Upit:</b> '.$brise_mysql_greske_sve.'<br /><b>Mysql greška '.mysql_errno().':</b> '.mysql_error(),'» Greška');       dno_predlozak();       exit();    } } $ime_stranice='Mysql greške - '.$ime_sajta; //Ime stranice. $opis_stranice='Ovdje se prikazuju mysql greške.'; //Opis stranice. $kljucne_rijeci_stranice='admin, administracija, mjenja, upravlja, mysql, greške'; //Ključne riječi stranice. //Određuje koliko će se mysql greški prikazivati po stranici. $granica=(isset($_GET['stranica']))?((max(1,intval($_GET['stranica']))-1)*20).',20':'0,20'; $s="SELECT id_mysql_greske, mysql_greska FROM mysql_greske ORDER BY id_mysql_greske DESC LIMIT ".$granica; $u=mysql_query($s)or die('Nije izvršena provjera u bazi!<br /><b>Upit:</b> '.$s.'<br /><b>Mysql greška '.mysql_errno().':</b> '.mysql_error()); //Provjerava dali ima mysql greški u bazi. if(mysql_num_rows($u)==0) {    vrh_predlozak();    predlozak1('Nema mysql greški u bazi!','» Mysql greške');    dno_predlozak();    exit(); } /*Otvara stranicu sa mysql greškama.*/ vrh_predlozak(); $s1="SELECT id_mysql_greske FROM mysql_greske"; $u1=mysql_query($s1)or die('Nije izvršena provjera u bazi!<br /><b>Upit:</b> '.$s1.'<br /><b>Mysql greška '.mysql_errno().':</b> '.mysql_error()); $r1=mysql_num_rows($u1); mysql_greske_predlozak(); dno_predlozak(); ?>

HTML:
<?php /***************************************** * mysql_greske_predlozak.php             * ****************************************** * Autor: Sokolušić Suad                  * *****************************************/ /*Funkcija mysql greške predložak*/ function mysql_greske_predlozak() {    global $u,$r1; ?> <table width="100%" cellpadding="0" cellspacing="0" border="0">    <tr>       <td>          <div class="tabla2">             <div class="tabla2_vrh_lijeva">                <div class="tabla2_vrh_desna">                   <table width="100%" cellpadding="5" cellspacing="5" border="0">                      <tr>                         <td><b>» Mysql greške</b></td>                      </tr>                   </table>                </div>             </div>          </div> <?php    while($p=mysql_fetch_array($u))    { ?>          <div class="tabla">             <div class="tabla_vrh_lijeva">                <div class="tabla_vrh_desna">                   <table width="100%" cellpadding="5" cellspacing="5" border="0">                      <tr>                         <td width="90%"><?php echo $p['mysql_greska'] ?><br /><b>Datum:</b> <?php echo datum_stvaranja_mysql_greske($p['id_mysql_greske']); ?></td>                         <td width="10%" align="right" valign="bottom" class="mali_text"> <?php       //Provjerava dali je poslata stranica.       if(isset($_GET['stranica']))       {    ?>                                                    <a href="mysql_greske.php?stranica=<?php echo $_GET['stranica'] ?>&amp;izbrisi=<?php echo $p['id_mysql_greske'] ?>"><img src="tema/slike/tipke/izbrisi.gif" title="Izbriši" alt="" /> Izbriši</a> <?php       }else       { ?>                            <a href="mysql_greske.php?izbrisi=<?php echo $p['id_mysql_greske'] ?>"><img src="tema/slike/tipke/izbrisi.gif" title="Izbriši" alt="" /> Izbriši</a> <?php       } ?>                         </td>                      </tr>                   </table>                </div>             </div>          </div> <?php    } ?>          <div class="tabla2">             <div class="tabla2_vrh_lijeva">                <div class="tabla2_vrh_desna">                   <table width="100%" cellpadding="5" cellspacing="5" border="0">                      <tr>                         <td class="mali_text"><a href="mysql_greske.php?izbrisi_sve"><img src="tema/slike/tipke/izbrisi.gif" title="Izbriši sve" alt="" /> Izbriši sve</a></td> <?php    //Ako ima mysql greški više od 20 prikazuje paginaciju.    if($r1>20)    { ?>                                  <td align="right"> <?php       paginacija($r1,20,'mysql_greske.php?'); //Pokreće paginaciju. ?>                         </td> <?php    } ?>                      </tr>                   </table>                </div>             </div>          </div>       </td>    </tr> </table> <?php } ?>

Šta mislite dali ovo valja?

Ko je trenutno na forumu
 

Ukupno su 2118 korisnika na forumu :: 98 registrovanih, 7 sakrivenih i 2013 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 13297 - dana 20 Jan 2026 17:42

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 9191vs, abramac, aramis s, Asteker, AudioTehnica, avijacija, bankulen, BB, Bob.Rock, bobo85, bolimejoli, Boris BM, Borkanović, BORUTUS, bunker, CikaKURE, cinoeye, Colt D, dekir, deks, Dežurni_Automatičar, Df410, DmitryStrong, DonRumataEstorski, doom83, drale12, dukajov, Dungorth, Dzambas, DzigiNS, foksmolder, FOX, gajasvi, goxin, Igor Antonic, Insan, Jan, Jezekijel, Jose, Kajzer Soze, Kenanjoz, king111, Knovakov, Komanca, KUZMAR, Laluvr, Levi, LostInSpaceandTime, Lotus, majstro, mercedesamg, Metanoja, milanpb, milospobedic, mkukoleca, MrG, naki011, nebidrag, Nemanja.M, Nikolajevic, Nmr, Oscar, paja69, pceklic, pera bager, Petarvu, Prečanin30, proka89, RajkoB, Ripanjac, RJ, Rocky I, rovac, SamostalniReferent, shone34, Sinisa76, Sirius, Sićko, skvara, Sky diver 29, Solunac na steroidima, Srki98, stokssone, synergia, tecataki, TheDictator, tomo2, tubular, uruk, Vlada78, vladaa012, Volkhov-M, Wepp, wolverined4, xAlex2, Zastava, Zoran1959, Žoržo