Arquivos

Archive for maio \16\UTC 2010

configurando o zend em modulos

Boa Tarde a todos ! hoje irei passar como se configura um projeto zend em modulos. Bom primeiro criem um projeto com o nome de sua preferência, eu não irei passar como se cria, caso alguem tenha dúvida, veja os topicos anteriores.

Antes de tudo alguns conceitos: application.ini que é onde ficam todas as configurações inicias da nossa aplicação, onde definimos a URL base, caminhos dos módulos, controllers, views e etc. Também temos o nosso bootstrap que é o coração da nossa aplicação, onde startamos funções essencias na nossa aplicação como autoloader, plugins e conexão com banco de dados e o diretório library que é onde temos a nossa biblioteca Zend e podemos criar os nossos plugins. Agora temos uma base para podermos configurar a nossa applicação.

Abra sua ide de preferencia, abra o projeto que acabou de criar e exclua as pastas controller e views, e crie e diretório modules, agora abra o arquivo appication/config/application.ini e cole o arquivo abaixo:

[production]
;display erros case 0 não apresentam os erros se setados com 1 apresentam,funcionam como o error reporting
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0

;includes
includePaths.library = APPLICATION_PATH “/../library”

;bootstrap
bootstrap.path = APPLICATION_PATH “/Bootstrap.php”
bootstrap.class = “Bootstrap”

;namespace
appnamespace = “Application”
autoloaderNamespaces[] = “App_”
autoloaderNamespaces[] = “ZC”

;controller
resources.frontController.controllerDirectory = APPLICATION_PATH “/controllers”
resources.frontController.params.displayExceptions = 0

;layouts dos modules
resources.layout.layoutPath = APPLICATION_PATH “/layouts/scripts”
resources.view[] =

;para setar esta configuração devemos ter no nosso .htacces “SetEnv APPLICATION_ENV development”

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

depois cole o codigo abaixo no zeu bootstrap

protected function _initFrontController()
{

$front = Zend_Controller_Front::getInstance();
$layout_manager = new App_Layout_Manager();

$front->addModuleDirectory(APPLICATION_PATH . ‘/modules’)
->setDefaultModule(‘default’)
->registerPlugin($layout_manager);

$front->setParam(‘prefixDefaultModule’, true);

return $front;

}

Agora temos que criar os arquivos no diretório modules e o plugin no diretório library

primeiro no modules:

crie o diretório admin com os seguintes subdiretórios :
controller com dois arquivos IndexController.php e ErrorController.php e cole o conteudo abaixo no Index:

<?php

class Admin_IndexController extends Zend_Controller_Action
{
public function indexAction()
{

}

}

E em ERROR

<?php

class Admin_ErrorController extends Zend_Controller_Action
{
public function indexAction()
{

}

}

depois crie o diretório layout com o sub diretório scripts contendo o arquivo layout.phtml.

agora crie os diretórios views com os subdiretórios helpers e o spcripts igual o diretório view do projeto que haviamos criado em zend, no diretório scripts criamos dois diretórios index e error, com os seguintes arquivos. index.phtml na index e error.phtml no error, agora crie os diretórios para defualt como criamos acima e pronto o nosso projeto esta funcionando em modules.
OBS.: para todo controller devera ter no diretorio views/scripts um diretorio com o nome, por exemplo IndexController tem o diretório index e assim por diante, como estamos trabalhando como modulos temos que colocar no nome de nossas classes Exemplo no module Admin Admin_IndexController e devemos seguir este padrao para criarmos outros controles.

Bom ! Qualquer duvida poste que eu respondo, se for o caso pode deixar o email que eu responderei o mais breve possivel.

Categoriaszend em modulos

Hello world zend e zend_layout !

Bom dia a todos ! Hoje iremos percorrer todos os caminhos para que possamos fazer um hello world !
“estou partindo do ponto que todos já estão com o zend configurado”. Bom abra o seu ide de preferência, no meu caso estou trabalhando com o netbeans 6.8, abra o projeto que criamos. Agora va até o diretório application/controller/IndexController.php na funcao indexAction digite $this->view->teste = “criando variavel php no controller zend”; depois para dar nos lançarmos a variável na view devemos ir no diretório views/scripts/index.phtml apagar tudo e dar o comando echo $this->teste; viu como é fácil, oque nos fizemos, mandamos a variavel zend com o conteudo “criando variavel php no controller zend” para a view e depois jogamos ela na tela.

Bom agora vamos configurar um layout padrão para o nosso projeto, para isso vamos a console “para que não leu como se faz sugiro que veja os posts anteriores”, e damos damos o comando igual para criar o projeto, so que agora devemos dar o comando WINDOWS “zf enable layout” e no linux “./zf.sh enable layout” pronto o nosso layout esta configurado, note que esse comando crio o diretório layouts em application e dentro dele foi criado o diretorio scripts e o arquivo layout.phtml, abra este arquivo e note que tem um linha de comando echo $this->layout()->content; ,este comando e para que todo o codigo que vier das views apareça ali. Vamos fazer um teste, copie o codigo abaixo e cole em layouts.phtml, não esta muito bom, mas serve para exemplificarmos :
body {margin: 0; padding: 0; font: 85% arial, hevetica, sans-serif; text-align: center; color: #505367; background-color: #D6D6D6;
}#container{margin: 1em auto; width: 1000px; text-align: left; background-color: red; border: 1px solid black; }
#header { height: 100px; background-color: fuchsia; }
#mainnav {height: 25px; background-color: green; }
#menu{width: 180px; height: 200px; background-color: yellow; float: left; }
#contents {width: 600px; height:200px; margin-left: 200px; background-color: aqua; }
#footer {clear: both; height: 20px; background-color: lime; }
Clique na imagem abaixo.

zend_layout

exemplo de zend_layout

Obs.: copie o exemplo das div’s acima e teste. Note que a frase que criamos, ficou no content, igual a maioria dos sites onde se tem um layout padrao e so muda o conteudo central. Antes de terminar vo mostrar o comanando que desabilita o layout, $this->_helper->layout->disableLayout(); pode colocar ele no controler abaixo do comando que haviamos dado para testar. Bom espero que tenham gostado.

Categoriaszend_layout

criar uma virtual host !

Boa noite, estou meio sem sono e resolvi criar mais um post.
Porque criar uma virtual host ? Com a virtual host, podemos configurar nossa url amigável, facilitando muito o desenvolvimento de nossos sites exemplos de vhost: zend.local , porta.local … etc. Bom vamos ao que interessa.

No windows :

Vá em C:\\xampp\apache\conf\extra e abra o arquivo httpd-vhosts.conf, nele configure as linhas:

descomente NameVirtualHost *:80 e altera as seguinter linhas

DocumentRoot “/xampp/htdocs/zend/public”
ServerName zend.local
ServerAlias zend

depois va em C:\WINDOWS\system32\drivers\etc e abra o arquivo hosts e acrescente

127.0.0.1 zend.local, logo abaixo de 127.0.0.1 localhost ficando assim

127.0.0.1 localhost
127.0.0.1 zend.local

Agora teste, vá ate o browser de preferência e digite zend.local, caso apareça a tela de boas vindas é que deu tudo certo.

No linux :

Vá até /opt/lampp/etc/ e abra o arquivo httpd.conf descomente a linha 480 referente a virtual host, depois vá até opt/lampp/etc/extra/ abra o arquivo httpd-vhosts.conf e edite ele conforme abaixo:

ServerName zend.local
DocumentRoot /opt/lampp/htdocs/zend/public

Bom vamos testar, abram o browser de preferência e digitem zend.local, se estiver dado tudo certo ira aparecer a tela de boas vindas do zend, agora vcs podem criar suas vhosts, caso eu tenho esquecido de algo, podem deixar um comentário que assim que possível respondo.

No próximo post irei configurar o zend em modulos, até mais.

criar projeto via console

Boa tarde ! Neste post irei passar como se cria uma projeto via prompt no windows e no linux.

Obs.: antes de tudo temos que colocar o php no path.

No linux xampp de o comando export PATH=$PATH:/opt/lampp/php
No linux apache2 export PATH=$PATH:/var/php

No Windows : vá em iniciar e com o botão direito do mouse no meu computador, propriedades, avançado, variaveis de ambiente, nova nome da variável PATH e valor da variável c://xampp/php

No linux com xampp:

Baixe o zend framework, “eu coloquei o link na minha home page”, depois descompacte ele em /opt/lampp e crie a pasta zend14 , eu uso este padrão para sempre saber qual é a versão que eu estou usando.
Depois disso entre na pasta zend14/bin e de o comando na “console” ./zf.sh create project zend este comando ira criar um projeto no diretório /bin será necessário, move-lo para /opt/lampp/htdocs.
Depois disso entre no diretório zend14 e copie a pasta que está na librery chamada Zend e o diretório /bin cole na pasta library o Zend e o /bin no diretório / “na raiz” do projeto que acabamos de criar.
Feito isso é só acessar com o seu browser de preferência localhost/zend/public “Conforme for publicando irei explicar o que cada diretório faz e quais arquivos devem conter”, no browser caso tenha dado tudo certo você vera uma caixa azul com alguns dizeres…

No linux com apache2:
O procedimento é o mesmo, só que ao inzés de descompactar no /opt/lampp você descompacta no /var/www, e faz os mesmos procedimentos acima.

No Windows:
Descompacte o arquivo no c://xampp e crie a pasta zend14, entre nela “via console” e de o comando zf create project zend, depois disso e só copiar o zend conforme descrito acima para começar a brincar.

Categoriascriar projeto -

O que é o zend framework ?

Zend framework  é um conjunto de classes php, que  seguem o padrão MVC – Model View Controller. É um padrão de arquitetura onde separa o GUI, templates, etc(View) da lógica(Model) e do controle(Controller).

Em outras palavras você organiza todo o seu código, separando toda visão a view onde ficam os códigos em html, do  php, com isso obtendo um código legível e fácil de se dar suporte e manutenção.

Ele é composto por um conjunto de plugins, que ajudam muito a vida dos desenvolvedores de sites em php.

Neste blog irei passar, desde de como se configurar o application.ini até a contrução de um web site todo em zend.


Categoriasdefinições
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.