Na swojej stronie chciałem umieścić skypt autorstwa noos-a "System logowania oparty o sesje i MySQL ". Jednak skypt mi nie działa , a dokładniej nie sprawdz mi loginu i hasła, rfazem z autorem skyptu prubowaliśmy odkryć czemu tak sie dzieje jednak nie udało se. Poniżej zamieszczem kod skyptu z nadzieją że ktos mi pomoże.
[php:1:bba90ddf43]
<?
include("header.tpl");
#LOGOWANIE by Noose
#W razie problemów noose@poczta.wp.pl
#albo GG: 1822588
#pozdrawiam
# Inicjujemy funkcje z ktorej bedziemy pózniej korzystac:)
function logowanie()
{
echo("<form method ="post">n
<br>n
User: <input type="text" name="login" style="height:15px;font-size:10px;width:80px; "><br>n
Pass: <input type="password" name="haslo" style="height:15px;font-size:10px;width:80px; "><br>n
<input type="submit" name="submit" value="Zaloguj" size="6 " style="height:19px;font-size:10px; "><br>n
<br>
</form>n");
}
# i po funkcji
# w tym pliku są zmienne potrzebne do łaczenia się z baza danych
include("config.cfg"); #plik z info o bazie danych
if(!isset($submit)) # jeżeli nie zaznaczono submit, odpal logowanie
{
logowanie();
}
else # w innym przypadku....
{
$login=$_POST["login"];
$haslo=$_POST["haslo"];
$db=mysql_connect("$sql_host", "$sql_user", "$sql_pass") or die("Nie można się połączyć z serwerem"); # łaczenie się z bazą danych
mysql_select_db("$sql_base", $db) or die("Problem z łączeniem się z bazą danych "); # jeżeli występują problemy to przerywa skrypt
$sql="SELECT * FROM users WHERE user_login = '$login'" or die("Nie można załadowac danych z bazy"); ; # zapytanie do mysql o wyswietlenie komórki USER_NAME w której figuruje zmienna $login
$result=mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$user_login= $row["user_login"]; # $zmienna_używana_w_skrypcie=$komórka["nazwa_komórki_ze_sql"];
$user_pass= $row["user_pass"]; # tutaj definiujemy komorki
$ban=$row["ban"];
if (($haslo != $user_pass) || ($login != $user_login)) # jeżeli hasło / login się nie zgadzają
{
echo("Zly login/pass"); # pokazuje "Zly login/pass" oraz logowanie (z wczesniej zadeklarowanej funkcji:)
logowanie();
} else { # w innym przypadku (tj. login i pass są prawdziwe)
session_register(login) or die("ERROR");
session_register(ban) or die("ERROR");
include_once("index.php");
print_r($_SESSION);
}
}
}
include("footer.tpl");
?>
[/php:1:bba90ddf43]
oraz w pliku header.tpl jest:
[php:1:bba90ddf43]
<?
session_name(pupunia) or die("ERROR");
session_start() or die("ERROR");
?>
[/php:1:bba90ddf43]
Według mnie problem jest taki ze [php:1:bba90ddf43]
else { # w innym przypadku (tj. login i pass są prawdziwe)
session_register(login) or die("ERROR");
session_register(ban) or die("ERROR");
include_once("index.php");
print_r($_SESSION);
}
[/php:1:bba90ddf43]
nie działa ( i jeszcze dodam że skypt według autora działał na jego stronie)