Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Konfiguracja apache - sesje
Forum PHP.pl > Forum > PHP
binio
Witam

Mam taki problem:
Zrobilem system uwierzytelniania urzytkowników itd, po zalogowaniu mogą dodawac newsy itp. Na serwerze ktorego uzywam wszystko jest ok, natomiast gdy przenioslem aplikacje na inny serwer (docelowy) to jest problem z sesją.

Mianowicie nie mozna sie zalogować, php weryfikuje czy jest wpisane haslo, czy jest wpisany login - jak jest cos zle to od razu informuje. Natomiast gdy wszystko jest poprawnie to przenosi na pustą strone zamiast zalogować.

Wydaje mi sie ze to jest problem konfiguracji apache, niestety mam w tym male doswiadczenie i niewiem co poradzic koledze.

P.S. Sprawdzalem skrypt na innym serwerze i tez dziala dobrze.

Z gory dzieki za pomoc
BzikOS
Rzuć kawałkiem kodu.
binio
Robi się smile.gif

[php:1:4fba88087a]<?php

include("language_pol.php");
function lacz_bd()
{
$wynik = @mysql_pconnect("localhost", "xxx", "xxx");
if (!$wynik)
return false;
if (!@mysql_select_db("xxx"))
return false;

return $wynik;
}

function pobierz_rekord_autora($nazwa_uz)
{
$lacz = lacz_bd();
$sql = "select * from autorzy where nazwa_uz = '$nazwa_uz'";
$wynik = mysql_query($sql, $lacz);
return(mysql_fetch_array($wynik));
}

function loguj($nazwa_uz, $haslo)
{
$lacz = lacz_bd();
if (!$lacz)
return 0;

$wynik = mysql_query("select * from autorzy where nazwa_uz='$nazwa_uz' and haslo = password('$haslo')");
if (!$wynik)
return 0;

if (mysql_num_rows($wynik)>0)
return 1;
else
return 0;
}

function sprawdz_uwierz_uzyt()
{
global $uwierz_uzyt;
if ( (session_is_registered("uwierz_uzyt")) && (isset($uwierz_uzyt)) )
return true;
else
return false;
}

if ( (!$nazwa_uz) || (!$haslo) ) {
echo "<b>$all_powrot</b>";
exit;
}

if (loguj($nazwa_uz, $haslo)) {

$uwierz_uzyt = $nazwa_uz;
session_register("uwierz_uzyt");
header("Location: lek.php");
}
else {
echo "$logowanie_zle_haslo";
exit;
}

?>[/php:1:4fba88087a]

To jest plik sprawdajacy dane, ktore sie wpisuje w innym pliku, ale to chyba nie istotne.
BzikOS
Używasz archaicznego sposobu rejestrowania zmiennych sesyjnych. treaz to robi sie tak:

[php:1:367a8c0f01]<?php
session_start();
$_SESSION['uwierz_uzyt'] = $nazwa_uz; // zamiast session_register()

isset( $_SESSION['uwierz_uzyt'] ); // zamiast session_is_registered()
?>[/php:1:367a8c0f01]
binio
Wstawilem nastepujaco:

[php:1:384a1b3f27]<?php
function sprawdz_uwierz_uzyt()
{
global $uwierz_uzyt;
if isset( $_SESSION['uwierz_uzyt'] );
return true;
else
return false;
}

if ( (!$nazwa_uz) || (!$haslo) ) {
echo "$logowanie_aby_kontyn";
exit;
}

if (loguj($nazwa_uz, $haslo)) {

session_start();
$_SESSION['uwierz_uzyt'] = $nazwa_uz;
header("Location: lek.php");
}

else {
echo "$logowanie_zle_haslo";
exit;
}

?>[/php:1:384a1b3f27]

i niestety to samo sad.gif
Nadal nie loguje
blade9999
jezeli wychodzi ci pusta strona moze to oznaczac zbyt małą ilosc pamięci jaką skrypt może użyć. Ustaw sobie w pliku php.ini przy wersji 4 jest to linia 214 "memory_limit" sproboj ustawic na 12MB a jak nie pomoze to na 16MB powinno to pomóc
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.