ola boa gente, tentei pesquisar por este assunto no forum, mas curiosamente nao consegui pesquisar por php por ser inferior a 4 letras
a pergunta é mesmo essa, sou novo nestes assuntos.
Ja fiz alguns progressos, nomeadamente fazer um interface em php para aceder à base de dados, agora queria dar mais um pulo em frente criando um esquema de autenticaçao do utilizador...
alguem me da algumas dicas, ou mesmo um caminho a seguir?
thnks
Bem, podes por começar em ver umas ajuditas na net sobre sessoes php, comandos como
session_start();
session_destroy();
e variaveis de sessao:
$_SESSION['variavel'];
o principio é basico.
o user introduz o seu user e pass, depois autenticas essas informaçoes com a tua base de dados, verificas se sao verdadeiras, se forem, crias a sessao. tipo:
session_start(); //podes definir tudo na tua sessao, tempo de duraçao, expiraçao, nome, etc...
depois guardas as tuas variaveis na sessao:
$_SESSION['user'];
$_SESSION['pass'];
//lembra-te de encriptares isto (user e pass), kto mais nao seja com o base64 encode (+-inseguro)
em todas as tuas pagina da area "restrita" para teres acesso às variaveis da sessao, teras que colocar o session_start(); antes dos teus headers. Depois convem criares um script, ou funçao para em cada pagina verificares se os dados da sessao sao verdadeiros. Se os dados forem, ai entao apresentas a tua pagina protegida, senao, die("User nao permitido"); (isto resolves com um if
)
A verificaçao da sessao seria algo como:
if ( ($_SESSION['user']==$user_da_bd) && ($_SESSION['pass']==$pass_da_bd) )
{
//conteudo da pagina aqui.
}
else
{
die("User ou pass invalidos"); //termina imediatamente a execuçao do php.
}
Se usar pagina totalmente em php, podes simplificar, no inicio do teu file php:
if ( ($_SESSION['user']!=$user_da_bd) || ($_SESSION['pass']!=$pass_da_bd) )
{
die("User ou pass invalidos"); //termina imediatamente a execuçao do php.
}
//pagina aqui, neste caso nao necessita de estar dentro do { if } porque se apass ou user forem invalidos o php é terminado imediatamente
die();!
Quanto à tua ligaçao ao oracle, teras de ver mais ajuda na web, mas nao te sera dificil. Ve:
http://www.oracle.com/technology/pub/notes/technote_php_instant.html
(...)
Using Oracle
When the basic connection is working, try out a simple script, testoci.php. Modify the connection details to suit your database and load it in a browser. This example lists all tables owned by the user HR:
<?php
$conn = OCILogon("hr", "hr_password", '//mymachine.mydomain
ort/MYDB);
$query = 'select table_name from user_tables';
$stid = OCIParse($conn, $query);
OCIExecute($stid, OCI_DEFAULT);
while ($succ = OCIFetchInto($stid, $row))
{
foreach ($row as $item)
{
echo $item." ";
}
echo "<br>\n";
}
OCILogoff($conn);
?>
quanto a trabalhares com sessoes:
http://www.php.net/manual/pt_BR/ref.session.php
Acho que com isto nao te sera dificil criares essa autenticaçao
abraço.