AJAX login probléma. A php nem ír a session-ba

Ez a téma lezárásra került a moderátor által. A lezárás oka: Tud�st�r: egy t�ma - egy k�rd�s/probl�ma!
AJAX login probléma. A php nem ír a session-ba
2009-06-02T18:28:17+02:00
2009-06-02T19:12:35+02:00
2022-08-13T04:41:24+02:00
nszebenyi
Sziasztok!

Első ajax programomat megírtam és részben működik is!
Egy login szkriptet csináltam ami POST-al elküldi a login formba beírt adatokat a login.php-nek ami feldolgozza és ha helyes akkor a $_SESSION['user'] -be írnia kellene, de ezt nem teszi. Mit rontok el?

JS:
<script language="javascript"> function postRequest(strURL){ var xmlHttp; if(window.XMLHttpRequest){ var xmlHttp = new XMLHttpRequest(); } else if(window.ActiveXObject){ var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlHttp.open('POST', strURL, true); xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlHttp.onreadystatechange = function(){ if (xmlHttp.readyState == 4){ updatepage(xmlHttp.responseText); } } xmlHttp.send(strURL); } function updatepage(str){ if(str=="yes"){ document.getElementById('siker').style.display='block'; }else{ alert("Hiba!"); } } function call_login(){ var username = window.document.f1.username.value; var password = window.document.f1.password.value; var url = "login.php?username=" + username + "&password=" +password ; postRequest(url); } </script>
login.php :
<?php session_start(); ob_start(); $username = $_GET["username"]; $password = $_GET["password"]; if($username=="admin" && $password=="admin") { $_SESSION['user'] == "admin"; echo "yes"; } else{ echo "No"; } ?>

A cél, hogy az index.php amikor visszakapja, hogy sikeres volt a login akkor megjelenít egy div-et aminek tartalmaznia kéne a user nevét. A baj már ott kezdődik, hogy a session üres marad

A segítségeteket előre is hálás köszönöm!
Mutasd a teljes hozzászólást!

$_SESSION['user'] == "admin"; echo "yes";
szerintem ide elég egy db = is
$_SESSION['user'] = "admin"; echo "yes";
Mutasd a teljes hozzászólást!

  • Köszönöm szépen

    ettől féltem. Megkedveltem a php szintaktikáját és most, hogy tanulom az AJAX-ot mindent mindennel keverek és már a php-ba is javascript-et írok

    A session-ba mostmár ír de egy elméleti kérdésem még lenne.
    Most az index.php-be van egy div ami alapértelmezettként display:none, tehát nem látszik és ha sikeres a login akkor látszik. A div tartalma a $_SESSION['user']. Viszont ezt nem írja bele. Itt gondolom az lehet a baj, hogy amikor belépek akkor a login.php beléptet a session-al de az index.php-m még az előtt kérte le a session értékét, hogy beléptem volna. Valami megoldást tudtok erre? Adjam vissza AJAX-al a user nevét és azt töltsem be egy változóba? De az sem lesz jó. Nem tudom
    Mutasd a teljes hozzászólást!
  • és nem segít egy document.location.reload() ?
    Mutasd a teljes hozzászólást!
Ez a téma lezárásra került a moderátor által. A lezárás oka: Tud�st�r: egy t�ma - egy k�rd�s/probl�ma!
abcd