Jump to content
Fórum Script Brasil
  • 0

Integrando O Smarty Com O Xajax E O Adodb


Bira_MG
 Share

Question

Olá pessoal, meu nome é Ubirajara e estou terminando o curso de Ciencia da Computação na UFV.

Estou desenvolvendo uma aplicação de sistema de informação geográfica pra web , pra uma entidade ligada a universidade.

Resolvi utilizar o padrão MVC e para isso estou pensando em construir um mini-framework utilizando SMARTY + XAJAX + ADODB.

Já fiz alguns projetos com Smarty e Adodb e mais recentemente Xajax e Adodb, então parei e pensei, porque não usar os 3 juntos( Smarty, Xajax, Adodb )

Por enquanto ainda estou trabalhando no framework MVC que utilizará como base o trio acima, mas já vou adiantando como fazer o Xajax e o Smarty e o Adodb funcionarem juntos

Para este pequeno tutorial, fiz o seguinte

Criei uma pasta com o nome "teste" e dentro dela coloquei o Smarty2.6.18, Xajax0.5 e Adodb501

Criando a estrutura de diretórios abaixo

teste

| adodb

|

| xajax

| | xajax_core ...

|

| smarty

| | libs

| | templates ...

Agora o código:

Primeiro só Smarty + Xajax

Arquivo teste.php

<?php

define('SMARTY_DIR','smarty/libs/');

require_once(SMARTY_DIR.'Smarty.class.php');

require_once( 'xajax/xajax_core/xajax.inc.php' );

$xajax = new xajax();

function myFunction()
{

$objResponse = new xajaxResponse();

$objResponse->assign("SomeElementId", "innerHTML", 'Xajax + Smarty');

return $objResponse;
}

$xajax->registerFunction("myFunction");

$xajax->processRequest();

$smarty = new Smarty;

$smarty->template_dir = 'smarty/templates/';
$smarty->compile_dir = 'smarty/templates_c/';
$smarty->config_dir = 'smarty/configs/';
$smarty->cache_dir = 'smarty/cache/';

$smarty->caching = true;

$smarty->assign('name','Smarty');

$smarty->assign('xajax_javascript', $xajax->getJavascript('xajax/'));

$smarty->display('index.tpl');

?>[/codebox]

Arquivo index.tlp

[codebox]<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>{$name}</title>
{$xajax_javascript}
</head>
<body>
{$name}
<br />
<br />
<div id="SomeElementId"></div>
<br />
<br />
<input value="Xajax" type="button" onclick="xajax_myFunction();" />
</body>
</html>

Agora é só colocar o Adodb pra funcionar, e para isso é só fazer o seguinte.

Arquivo teste.php

<?php

define('SMARTY_DIR','smarty/libs/');

require_once(SMARTY_DIR.'Smarty.class.php');

require_once( 'xajax/xajax_core/xajax.inc.php' );

require_once( 'adodb/adodb.inc.php' );

$xajax = new xajax();

function myFunction()
{

$conn = &ADONewConnection( 'Oci8' );

$conn->PConnect( 192.0.0.1, 'user', 'pws', 'oraSID' );

$query = "select NOME from USUARIOS where ID = 0 ";

$recordSet = &$conn->Execute( $query );

if( !$recordSet->EOF ) {
$var = $recordSet->fields['NOMEUSU'];
} else {
$var = ''Usuario Inexistente;
}


$objResponse = new xajaxResponse();

$objResponse->assign("SomeElementId", "innerHTML", $var);

return $objResponse;
}

$xajax->registerFunction("myFunction");

$xajax->processRequest();

$smarty = new Smarty;

$smarty->template_dir = 'smarty/templates/';
$smarty->compile_dir = 'smarty/templates_c/';
$smarty->config_dir = 'smarty/configs/';
$smarty->cache_dir = 'smarty/cache/';

$smarty->caching = true;

$smarty->assign('name','Smarty');

$smarty->assign('xajax_javascript', $xajax->getJavascript('xajax/'));

$smarty->display('index.tpl');

?>[/codebox]

Por enquanto é isso.

Assim que tiver avanço no framework, estarei postando mais.

Abraços

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.4k
×
×
  • Create New...