PHP/Vlašský ořech

Z Varhoo
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
 
(Není zobrazeno 1 421 mezilehlých verzí od více než 100 uživatelů.)
Řádka 2: Řádka 2:
   
 
* '''Mysql''' - [[knihovna php mysql]]
 
* '''Mysql''' - [[knihovna php mysql]]
* '''Template engine'' [http://www.smarty.net/ Smarty template engine]
+
* '''Template engine''' [http://www.smarty.net/ Smarty template engine]
   
 
==Dokumentace k frameworku==
 
==Dokumentace k frameworku==
 
'''Struktura složek'''
 
'''Struktura složek'''
* view/ složka pro templaty
+
* view/ - složka pro templaty
* applications/ složka pro kontrolery
+
* applications/ - složka pro kontrolery
 
* library/ - složka pro třídy objektů
 
* library/ - složka pro třídy objektů
 
* css/ - složka s css skripty
 
* css/ - složka s css skripty
* js/ - složka s java scriptovými skripty
+
* js/ - složka s javaskriptovými soubory
 
* image/ - složka pro obrázky
 
* image/ - složka pro obrázky
* url.php - soubor s regulárními pravidli pro routování
+
* url.php - soubor s regulárními pravidly pro routování
 
* consts.php - konstanty pro projekt
 
* consts.php - konstanty pro projekt
* configure.php - konfigurační soubor pro celý projekt
+
* configure.php - konfigurační soubor pro celý projekt( obsahuje konfigurační data pro sql spojení)
* index.php - hlavní program s metodou run (něco jako main s loop)
+
* index.php - hlavní program s metodou run() (něco jako funkce main s loop)
   
   
 
'''class peanut'''
 
'''class peanut'''
* constants() - inicializace constant
+
* constants() - inicializace konstant
 
* getPg() - inicializace POST a GET
 
* getPg() - inicializace POST a GET
* securiry(array rights) - nějaké pravidla pro přístu podle uživatele (wtf?)
+
* securiry(array rights) - nějaké pravidla pro přístup podle uživatele (wtf?)
 
* application() - inicializace a spuštění skriptů/kotrolerů
 
* application() - inicializace a spuštění skriptů/kotrolerů
* renderSmarty() - inicializace template enginu
+
* renderSmarty() - inicializace a generování template enginu
 
* regUrl() - něco jako routování podle regulárních výrazů dané url
 
* regUrl() - něco jako routování podle regulárních výrazů dané url
 
* Url() - inicializace proměných získaných z url
 
* Url() - inicializace proměných získaných z url
Řádka 47: Řádka 47:
 
* lastInsertId() - vrátí poslední ID provedeného dotazu
 
* lastInsertId() - vrátí poslední ID provedeného dotazu
 
* update(string table, array, string condition) - aktualizace záznamu. napč. $Db->update("test",array("name","varhoo","id=1")
 
* update(string table, array, string condition) - aktualizace záznamu. napč. $Db->update("test",array("name","varhoo","id=1")
  +
  +
===Ukázka proejktu===
  +
index.php
  +
include "./configure.php";
  +
include "./library/peanut.class.php";
  +
require_once("./library/mysql.class.php");
  +
$system = new peanut();
  +
$system->run();
  +
  +
configure.php
  +
$config["mysql_server"] = "localhost";
  +
$config["mysql_db"] = "db";
  +
$config["mysql_user"] = "user";
  +
$config["mysql_pass" = "passwd";
  +
  +
url.php
  +
$patern = array(
  +
array("^(.*)$","index",array("hello world")),
  +
);
  +
  +
application/ciindex.php (c<name of file> je prefix)
  +
<?
  +
print_r($this->pg); //vypíše všechny dotazy na GET nebo POST
  +
$this->c["hello"] = "bafff!" //uloží data do "conent" pro template
  +
$this-c>["data"] = implode("<br/>",merge_array($this->url,$this->info));
  +
?>
  +
  +
view/index.html
  +
&#60;h1&#62;{ $view.hello } &#60;/h1&#62;
  +
<p { $view.data } </p>

Aktuální verze z 4. 1. 2012, 18:16

Zdrojové stránky projektu vlaský orech

[editovat] Dokumentace k frameworku

Struktura složek

  • view/ - složka pro templaty
  • applications/ - složka pro kontrolery
  • library/ - složka pro třídy objektů
  • css/ - složka s css skripty
  • js/ - složka s javaskriptovými soubory
  • image/ - složka pro obrázky
  • url.php - soubor s regulárními pravidly pro routování
  • consts.php - konstanty pro projekt
  • configure.php - konfigurační soubor pro celý projekt( obsahuje konfigurační data pro sql spojení)
  • index.php - hlavní program s metodou run() (něco jako funkce main s loop)


class peanut

  • constants() - inicializace konstant
  • getPg() - inicializace POST a GET
  • securiry(array rights) - nějaké pravidla pro přístup podle uživatele (wtf?)
  • application() - inicializace a spuštění skriptů/kotrolerů
  • renderSmarty() - inicializace a generování template enginu
  • regUrl() - něco jako routování podle regulárních výrazů dané url
  • Url() - inicializace proměných získaných z url
  • goToUrl(string url) - funkce přesměrovává projekt na danou url
  • makeProject() - vytvoření projektu (vytvoří adresářovou strukturu projektu)
  • log(string text) - logování textu do výstupu (trochu fail)
  • setTimer() - debuguje časovou náročnost
  • run() - spuštění (něco jako hlavní smyčka z desktop programů "loop")
  • module(sttring název) nebo library(string název) - v podstatě include programu
  • setMainPage(string file) - nastavení hlavní stránky pro template
  • isPost() - metoda určující zda byl poslán požadavek POST


class mysql

  • konstruktor() - inicializuje mysql - připojení k serveru z configuračního souboru configure.php
  • insert(string table, array) - vloží data do databáze vrací ID záznamu
  • query(string query) - spustí sql dotaz
  • queryArray(string query) - spustí sql dotaz a získané hodnoty vrátí jako array
  • queryObject(string query) - spustí sql dotaz a získané hodnoty vrátí jako object
  • fetchAll(string query) - vrátí pole hodnot ze selectu (pole nebo objekty)
  • fetchOne(string query) - vrátí první hodnotu ze seznamu (pole nebo objekt)
  • log() - vypíše chyby na výstup
  • lastInsertId() - vrátí poslední ID provedeného dotazu
  • update(string table, array, string condition) - aktualizace záznamu. napč. $Db->update("test",array("name","varhoo","id=1")

[editovat] Ukázka proejktu

index.php

include "./configure.php";
include "./library/peanut.class.php";
require_once("./library/mysql.class.php");
$system = new peanut();
$system->run();

configure.php

$config["mysql_server"] = "localhost";
$config["mysql_db"]  = "db";
$config["mysql_user"] = "user";
$config["mysql_pass" = "passwd";

url.php

$patern = array(
   array("^(.*)$","index",array("hello world")),
);

application/ciindex.php (c<name of file> je prefix)

<? 
print_r($this->pg); //vypíše všechny dotazy na GET nebo POST
$this->c["hello"] = "bafff!" //uloží data do "conent" pro template
$this-c>["data"] = implode("
",merge_array($this->url,$this->info)); ?>

view/index.html

 <h1>{ $view.hello } </h1>
 <p { $view.data } </p>
Osobní nástroje