Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

feliper

sugestão

Recommended Posts

Fala pessoal, estou com um impasse aqui que não consegui pensar em nada, peguei um script na internet que utiliza templates, nesses arquivos de templete é possível executar alguns comandos por exemplo:

%%LNG_ControlPanel%%
%%LNG_Copyright%%
%%GLOBAL_SystemDateTime%% 

Em fim, eu preciso pegar o valor do %%GLOBAL_UserLoggedInAs%% para fazer uma comparação no MySQL porem quando eu jogo ele no PHP ele não é exibido se fizer por exemplo:

$user = %%GLOBAL_UserLoggedInAs%%;
echo $user;

Alguém teria alguma ideia de como conseguir solucionar esse problema? Já estou a mais de horas quebrando a cabeça sem solução, pago uma coca cola para quem me ajudar :P

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes de usar usar templates, entenda o básico sobre MVC.

A ideia é passar variáveis do PHP para o template, não o contrário. A forma que voce fez (com "%%" no PHP) é um erro de sintaxe

 

Você precisa manipular essa variável antes de enviá-la para a view. Caso precise enviar um dado da view para o PHP, terá de usar formulário (campo hidden, por exemplo)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu já fiz isto, tentei manipular antes do script ir para os templates o script funciona assim, o index.php se não tiver nenhum "redir" ele lê o arquivo login.tpl que tem um formulário:

 

 

<form class="login-form" action="index.php?Action=%%GLOBAL_SubmitAction%%" method="post" name="frmLogin" id="frmLogin"><h3 class="form-title">Acesse sua conta</h3><div class="alert alert-danger display-hide"><button class="close" data-close="alert"></button><span>Informe seu usuário e senha. </span></div><div class="form-group"><!--ie8, ie9 does not support html5 placeholder, so we just show field title for that--><label class="control-label visible-ie8 visible-ie9">Usuário</label><div class="input-icon"><i class="fa fa-user"></i><input class="form-control placeholder-no-fix" type="text" autocomplete="off" placeholder="Usuário" name="ss_username" id="ss_username"/></div></div><div class="form-group"><label class="control-label visible-ie8 visible-ie9">Senha</label><div class="input-icon"><i class="fa fa-lock"></i><input class="form-control placeholder-no-fix" type="password" autocomplete="off" placeholder="Senha" name="ss_password" id="ss_password"/></div></div><div class="form-actions"><button type="submit" class="btn green-haze pull-right">Entrar <i class="m-icon-swapright m-icon-white"></i></button><br><br></div><div class="forget-password"><h4>Esqueceu a sua senha ?</h4><p>sem problemas, clique <a href="javascript:;" id="forget-password">aqui </a>para recupera-la.</p></div></form>

esse formulário direciona para o index.php que defini qual pagina acessar, nesse index.php já tentei pegar os dados do formulário usando _POST, _GET, $_REQUEST, já tentei até ligar o register_globals do servidor, mas não consigo de jeito maneira, se colocar no código, veja o codigo abaixo do arquivo index.php:

 

 

<?php$min_php = '5.1.3';if (version_compare(PHP_VERSION, $min_php, '<')) {$sapi = php_sapi_name();$error_message = '';switch ($sapi) {// Display CLI version of the error message (this most likely be triggered by CRON)case 'cli':$error_message = "This application requires at least PHP version {$min_php} but your server is running PHP version " . PHP_VERSION . ".\n\nYour server might be running two version of PHP. You will need to modify your CRON details to use PHP 5 (usually modifying /usr/bin/php to /usr/bin/php5). If you are not sure how to do this, please ask your hosting provider.";break;// Display Web-version of the error messagedefault:// print templated error message$path = dirname(__FILE__) . '/com/templates';$header = file_get_contents($path . '/upgrade_header.tpl');$body = file_get_contents($path . '/upgrade_body.tpl');$footer = file_get_contents($path . '/upgrade_footer.tpl');$action = 'Installation';require_once('includes/config.php');if (defined('SENDSTUDIO_IS_SETUP') && SENDSTUDIO_IS_SETUP) {$action = 'Upgrade';}// See also admin/functions/upgradenx.php for a similar message$title = "This {$action} Cannot Proceed";$msg = '<p>This application requires at least PHP version <em>' . $min_php . '</em> but your server is running PHP version <em>' . PHP_VERSION . '</em>. To use this application, your web host must upgrade PHP to version <em>' . $min_php . '</em> or higher. Please note that this is not a problem with this application and it is something only your web host can change.</p>';// manually replace the tokens$header = str_replace('%%LNG_ControlPanel%%', $title, $header);$header = str_replace('%%GLOBAL_CHARSET%%', 'UTF-8', $header);$body = str_replace('{$title}', $title, $body);$body = str_replace('{$msg}', $msg, $body);$footer = str_replace('%%LNG_Copyright%%', '', $footer);$error_message = $header . $body . $footer;break;}echo $error_message;exit;}$testeusr = $_POST['ss_username'];echo $testeusr;// It's now up to the controller to re-direct requests.if(isset($_GET['Page'])){    $_GET['Page']= preg_replace('/[^\w]/', '_', $_GET['Page']);}require_once dirname(__FILE__) . '/com/init.php';shutdown_and_cleanup();?>

Você ou alguém saberia como me ajudar nisto para pegar esses dados? A linha acrescida por mim foi:

$testeusr = $_POST['ss_username'];echo $testeusr;

Ninguém pode ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.