Skip to content

Instantly share code, notes, and snippets.

@juniorz
Created October 31, 2008 02:49
Show Gist options
  • Save juniorz/21205 to your computer and use it in GitHub Desktop.
Save juniorz/21205 to your computer and use it in GitHub Desktop.
<?php
//Inicia a sessão
session_start();
//Inicia a variável
if(! array_key_exists('sesTestando', $_SESSION) ){
$_SESSION['sesTestando'] = 0;
}
//Inicia a variável global
$globalTestando = 10;
//Biblioteca SAJAX
require('Sajax.php');
function testeSessao()
{
return ++$_SESSION['sesTestando'];
}
function alteraGlobal()
{
global $globalTestando;
return $globalTestando++; //retorna 10 e $alteraGlobal = 11
}
function testeGlobal()
{
global $globalTestando;
return alteraGlobal() + $globalTestando; //retorna 10 + 11 = 21
}
sajax_init();
sajax_export('testeSessao', 'testeGlobal');
//Pelo o que eu entendi, esse é o handler em PHP que vai receber as chamadas "via AJAX" e chamar os devidos callbacks em PHP.
//Logo, qualquer função PHP que o SAJAX chamar, pode pensar como se ela tivesse sendo executada nesse ponto do script
sajax_handle_client_request();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
<? sajax_show_javascript(); ?>
</script>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"></script>
<script type="text/javascript">
jQuery(function($){
//Trata o click no link
$('#updater-sessao').click(function(e){
e.preventDefault(); //Não dispara o evento padrão do click no link
x_testeSessao(function(val){ //Chama a função criada pelo Sajax e ao terminar a requisição altera o valor do SPAN correspondente
$('#valor-sessao').html(val);
});
});
//Idem ao de cima
$('#updater-global').click(function(e){
e.preventDefault();
x_testeGlobal(function(val){
$('#valor-global').html(val);
});
});
})
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Teste do SAJAX</title>
</head>
<body>
<p>No início da execução dessa página o valor de $_SESSION['sesTestando'] era <strong><?=$_SESSION['sesTestando'];?></strong><br/>O valor atual é <span id="valor-sessao"></span><br/>
[<a href="#" id="updater-sessao">Ajax-me</a>]
<p>
<p>(Global) 10 + 11 = <span id="valor-global"></span><br/>
[<a href="#" id="updater-global">Ajax-me</a>]</p>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment