Page 1 of 1
[PHP]Używanie GET w wylogowywaniu
Posted: Sat Oct 16, 2010 5:01 pm
by Mari
Czy używanie metody GET w wylogowywaniu jest bezpieczne?
Podam przykład:
Code: Select all
if($_GET['wyloguj']=='tak')
{
echo "Zostałeś wylogowany z serwisu";
session_destroy();
}
Ten kod powoduje,że jeżeli wpiszemy w adres przeglądarki
www.naszastrona.pl?wyloguj=tak to wyświetli napis "Zostałeś wylogowany z serwisu" i zniszczy sesje ale czy na pewno to jest bezpieczne bo w sumie nie wiem?
Re: [PHP]Używanie GET w wylogowywaniu
Posted: Sat Oct 16, 2010 5:06 pm
by Radzio
Bez różnicy.
Re: [PHP]Używanie GET w wylogowywaniu
Posted: Sat Oct 16, 2010 5:11 pm
by Mari
Żeby nie tworzyć nowych tematów opiszę jeszcze jeden problem z formularzem.
Otóż chce aby formularz pokazywał się tylko raz na początku i wtedy gdy wpiszemy złe hasło a na razie pokazuje się dwa razy czyli i ten początkowy i tamten gdy wpiszemy źle hasło.Jak zrobić żeby tylko raz się pokazywało gdy wpiszemy niewłaściwe hasło.
Podaje kod:
Code: Select all
<form action="panel.php" method="post">
<input type="password" name="pass1" />
<input type="submit" value="Zaloguj"/>
</form>
<?php
if($_GET['wyl1']=='yes')
{
echo "Zostałeś wylogowany z serwisu";
session_destroy();
}
if (isset($_POST['pass1']))
{
if ($_POST['pass1'] == 'siema')
{
echo 'Jesteś zalogowany';
?>
</br></br></br><a href='panel.php?wyl1=yes'>Wyloguj się</a>
<?php
}
else
{
echo 'Nie jesteś zalogowany';
?>
<form action="panel.php" method="post">
<input type="password" name="pass1" />
<input type="submit" value="Zaloguj"/>
</form>
<?php
}
}
?>
Dobra sprawa rozwiązana po prostu dać
jeżeli ktoś jest niezalogowany i powracasz tym kodem do pierwotnego formularza.
Jest tylko ten problem,że aby użyć tego to nie możesz nic wysłać przed tym do przeglądarki żadnego tekstu.Czyli kod musimy dać na samym początku.
Pozdrawiam
Re: [PHP]Używanie GET w wylogowywaniu
Posted: Wed Nov 24, 2010 12:43 am
by pomek
Mari wrote:Czy używanie metody GET w wylogowywaniu jest bezpieczne?
W postaci niezabezpieczonej - nie
A odnosnie formularza, nie lepiej ogarnac to w funkcje? Osobiscie jestem zwolennikiem klas, ale pstryknalbym to w taki sposob:
Code: Select all
function form($error = "") { if(!empty($error)) { echo $error.'<br />'; }
// kod formularza }
W miejscu gdzie ma sie pojawic formularz pstrzykasz echo $form();
Jesli chcesz wyswietlic blad, to jako wpisujesz go jako parametr funkcji Form.
Re: [PHP]Używanie GET w wylogowywaniu
Posted: Wed Dec 23, 2015 8:42 am
by Sebastian
Odkop, ale cóż
if($_GET['wyl1']=='yes')
a co jak ktoś ci nie poda parametru wyl1? :>
if(isset($_GET['wyl1']) && $_GET['wyl1'] == 'yes')
Re: [PHP]Używanie GET w wylogowywaniu
Posted: Wed Dec 23, 2015 10:25 am
by Bren