thesnarkie Posted November 23, 2009 Report Posted November 23, 2009 (edited) index.php <form id="login_form" method="post"> <ul> <li> <label for="username">Username: </label> <input type="text" name="username" class="field required" id="username" minleght="3" maxlength="10" /> </li> <li> <label for="password">Password: </label> <input type="password" name="password" class="field required" id="password" onKeyPress="return capsLock(event)" /> </li> <li> <center> <input id="submit_login" type="submit" value="Authenticate" /> <div id="ajax_loading" align="center"> <img align="absmiddle" src="spinner.gif"> Processing... </div> <div id="login_response" style="color:red; font-weight:bold"> </div> <div id="caps_lock" style="display:none; color:red; font-weight:bold">Caps Lock taustiņš ir ieslēgts.<br /> Pārliecinies, ka raksti paroli pareizi!</div> </center> </li> </ul> </form> js $(document).ready(function() { $("#login_form").submit(function(){ $("#submit_login").hide(); $("#ajax_loading").show(); var str = $(this).serialize(); $.post("login.php", str, function(msg){ $("#login_response").ajaxComplete(function(event, request, settings){ $("#submit_login").show(); $("#ajax_loading").hide(); if(msg == "OK") { loadContents("#outer_top_right", "your_account.php"); } else { var login_response = msg; $("#login_response").html(login_response); } }); }); return false; }); }); function loadContents(div, url) { $(div).load(url); } php <?PHP include("connect.php"); $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $sql = mysql_query("SELECT `id` FROM `account` WHERE `login_name`='$username' AND `password`='$password'", $db); $result = mysql_num_rows($sql); if($result!=1) { session_start(); $_SESSION['mauka'] = $username; echo "Username or/and password is wrong."; } else { session_start(); $_SESSION['star'] = $username; echo "OK"; } ?> your_account.php <?PHP session_start(); ?> <div class="dialog"> <div class="content"> <div class="t"></div> <div class="m_title">Your accounet</div> <div class="m_content"> <b>Logged in as:</b> </div> </div> <div class="b"> <div></div> </div> </div> </div> Tātad, lietotājs ievada login datus. Kad nosūtīta login forma, tad js izpildās visas tās darbības un padod post uz php. Php pārbauda vai profils ir vai nav (nav svarīgi šobrīd cik droša ir datu pārbaude) un, ja dati ir pareizi, tad nosūta atpakaļ ziņu un vajadzētu izveidot sesiju['star'], kas saturēto session_id(); un ielādēt <div id="outer_top_right"></div> to html failiņu. Bet kaut kādu iemeslu pēc star sesiju neizveido. Kāpēc, kā salabot? Edited November 24, 2009 by thesnarkie Quote
rATRIJS Posted November 24, 2009 Report Posted November 24, 2009 php atgriež OK? Kādēļ tu session_id() glabā vēl kādā sesijas mainīgajā? session_id() pats par sevi satur sesijas id (kuru vajadzētu pašam uzģenerēt). Lai nu kā - ja php atgriež OK, tad lai sesija iedarbotos vajadzēs parlādēt lapu. Quote
thesnarkie Posted November 24, 2009 Author Report Posted November 24, 2009 Un kā to tagad izdarīt, ja es izmantoju tos load content? Quote
xPtv45z Posted November 24, 2009 Report Posted November 24, 2009 Man izskatās, ka tev nemaz nevajag pārlādēt, jo ar .load tu veic jaunu pieprasījumu, kuram jau vajadzētu ņemt vērā izveidoto sesiju. Pārbaudi vai šeit your_account.html viņas vispār darbojas. session_start() tur ir? Vai rāda, ko vajag, ja pats atver http://host/your_account.html utt Quote
thesnarkie Posted November 24, 2009 Author Report Posted November 24, 2009 (edited) Ok, updeitoju pirmo rakstu ar šī brīža failiem. Mēģināju, nekādu sesiju neizveido.. Mēģināju arī izveidot sesiju, pat, ja dati nav pareizi, bet arī tad nekādu sesiju star viņš neizveido. Pamēģiniet paši ielogoties: šeit. Login: test Pass: test Edited November 24, 2009 by thesnarkie Quote
xPtv45z Posted November 24, 2009 Report Posted November 24, 2009 Bet tev jau tajā your_account.php neko citu nav paredzēts izvadīt. Samaini šo <b>Logged in as:</b> uz <b>Logged in as: <?php echo $_SESSION['star'] ?></b> Kas tad parādās? Quote
thesnarkie Posted November 24, 2009 Author Report Posted November 24, 2009 Zinu, es sākumā gribēju pārliecināties, ka vispār sesiju izveido, tāpēc nesteidzos neko izvadīt.. Bet, eu. Darbojas. :O Bet kāpēc tad Firefoxī nerādās, ka ir izveidota sesija? Quote
xPtv45z Posted November 24, 2009 Report Posted November 24, 2009 Man strādā Firefoxī. Ielogojos tagad un parāda - Logged in as: 10cc4d336a6b853b5f8ad6ec0cf429d4 Quote
thesnarkie Posted November 24, 2009 Author Report Posted November 24, 2009 (edited) Nu jā, man arī strādā. Bet firefox Page info -> Security - > View cookies nerāda viņu. Protams, man jau vienalga, jo galvenais, ka darbojas. Paldies! :) Edited November 24, 2009 by thesnarkie Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.