iall Posted March 2, 2008 Report Share Posted March 2, 2008 (edited) Labs vakars, bēda ir šāda - manā lapā labajā pusē ir forma - Mana lapa Defaultais username: test un Password: test Pieņemsim , ja lietotājs ir ielogojies ,viss ir baigi smuki ,tad viņam formas vietā kas ir labajā pusē parāda "Laipni lūgts test" ,bet ja nav ielogojies tad rāda formu. Jautājums ir šāds ,kā es varētu pārbaudīt vai lietotājs ir ielogojies? login.php skripts - http://paste.php.lv/6937 Edited March 2, 2008 by iall Link to comment Share on other sites More sharing options...
andrisp Posted March 2, 2008 Report Share Posted March 2, 2008 Pārbaudi $_SESSION['login'] esamību. Link to comment Share on other sites More sharing options...
iall Posted March 2, 2008 Author Report Share Posted March 2, 2008 Apmēram šādi? $_SESSION['login'] = $_POST['login'] && $_SESSION['password'] = $_POST['password'] P.S. - Galīgi auzās ar visām sesijām ,ne bū ne bē. Link to comment Share on other sites More sharing options...
anonīms Posted March 2, 2008 Report Share Posted March 2, 2008 Man ir šādi: function checkLogin(){ // Lietotājvārds un parole ir uzstādīti if(isset($_SESSION['id']) && isset($_SESSION['lietotajvards']) && isset($_SESSION['parole'])) { // Apstiprinam, ka dati ievadīti pareizi if(confirmUser($_SESSION['lietotajvards'], $_SESSION['parole']) != 0){ // Dati ievadīti nepareizi unset($_SESSION['lietotajvards']); unset($_SESSION['parole']); return false; } return true; } un tad $ielogojies= checkLogin(); if($ielogojies) { echo "Tu esi ielogojies"; } else { echo "Reģistrējies"; } Link to comment Share on other sites More sharing options...
iall Posted March 2, 2008 Author Report Share Posted March 2, 2008 āāāh ,tāda sajūta ,ka drīz nobeigšos!Pilnīgi nekas nesanāk no tā ,kas gribas lai sanāk. Link to comment Share on other sites More sharing options...
Aleksejs Posted March 2, 2008 Report Share Posted March 2, 2008 Varbūt tad izlasi dokumentācijā, kas par tām sesijām rakstīts... http://lv.php.net/manual/en/ref.session.php http://www.htmlgoodies.com/beyond/php/article.php/3472581 http://www.fluidthoughts.com/howto/php/sessions/ http://dotnetindex.com/articles/3239_Session_in_PHP.asp Link to comment Share on other sites More sharing options...
iall Posted March 2, 2008 Author Report Share Posted March 2, 2008 ou maj gād ,šovakar būs tikai jālasa :D Link to comment Share on other sites More sharing options...
iall Posted March 2, 2008 Author Report Share Posted March 2, 2008 (edited) Tātad ,ir saglabāts kā UTF-8 without BOM.Pašā skripta sākumā ir session_start(); ,vispirms nav nekādas html izvades un citi pribambasi. Daru šādi - <?php if (!isset($_SESSION['username']) && !isset($_POST['password'])) { echo "<div class=navigaacija><div class=nav_nos>Profils</div>Hello, " . $_SESSION['login'] . ".<br><a href=logout.php>Iziet</a></div>"; } else { // ja nav datu tad izvada formu echo ' <div class="navigaacija"> <div class="nav_nos">Login</div> <form method="POST" action="login.php"> <img src="img/bulta.jpg"> Lietotajvards: <input type="text" name="login" size="15" /><br /> <img src="img/bulta.jpg"> Parole: <input type="password" name="password" size="15" /><br /> <input type="submit" value="Aiziet!" /></p></form><br> <a href="index.php?lp=reg">Registreties</a> | <a href="#">Aizmirsu paroli</a> </div> '; } ?> logout.php <?PHP session_start(); session_destroy(); header("Location: index.php"); ?> P.S. - Itkā sanāk ,ka iekš logout.php es startēju un uzreiz nogalēju sesiju vaine? Skatījos kā ,kas jādara no http://devzone.zend.com/article/646-PHP-10...-The-Cookie-Jar Edited March 2, 2008 by iall Link to comment Share on other sites More sharing options...
andrisp Posted March 2, 2008 Report Share Posted March 2, 2008 Jā. Tikai iesaku vēl papildus vienkārši pēc session_start() izdarīt šādi: $_SESSION = array(); Būsi 100% pārliecināts, ka sesijas dati ir iznīcināti. Link to comment Share on other sites More sharing options...
iall Posted March 2, 2008 Author Report Share Posted March 2, 2008 (edited) Paldies ,bet tik tālu viss ir pareizi?Man viņš negrib to formu izvadīt nez kapēc tad kad sesija ir nogalēta. :/ Edit: Aizmirsu piebilst ,ka izmet headers already sent ,bet nekas ,gan tikšu ar to galā ,primārais ir lai viss smuki notiek :) Edited March 2, 2008 by iall Link to comment Share on other sites More sharing options...
aywars Posted March 3, 2008 Report Share Posted March 3, 2008 Man šis strādā: <?php session_start(); ?> <!DOCTYPE> un <HEAD> <body> <?php // Sākam ielogošanos if (isset($_POST['username'])) { // Pārbaudam lietotajvārdu un paroli if ($_POST['username'] == 'username' and $_POST['password'] == 'password') { $_SESSION['authorized'] = TRUE; }} // Izlogošanās if (isset($_REQUEST['logout'])) { unset($_SESSION['authorized']);} // Ja lietotājvārds / parole ir pareizi, tad if (isset($_SESSION['authorized'])) { ?> ADMINISTRĀCIJA <?php // Ja lietotājvārds / parole nav pareizi, tad } else { ?> AUTORIZĀCIJA <?php } ?> </body> </html> LAI IZIETU: <?php echo $_SERVER['PHP_SELF']; ?>?logout=1 Link to comment Share on other sites More sharing options...
iall Posted March 3, 2008 Author Report Share Posted March 3, 2008 Paldies ,paskatīšos. Link to comment Share on other sites More sharing options...
Recommended Posts