Jump to content
php.lv forumi

Dabūt gatavu, lai strādā ielogošanās


yeahz

Recommended Posts

To man laikam izdevās sataisīt, bet ir nākoša problēma - kad mēģinu izlogoties tad izmet šādu erroru:

 

Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in C:\AppServ\www\2\logout.php on line 6

 

Un izlogošanās skripts ir šāds:

 

<?
// Izlogoties
if(isset($_GET['d']) and $_GET['d'] == "logout")
{
unset($_SESSION['id']);
session_destroy();
}
?>

 

Uz vēlviena problēma - ja arī es esu izlogojies, tad man parādās teksts kuram būtu jāuzrādās tikai tad kad tu esi ielogojies, lūdz šis kods:

<?php

if(!isset($_SESSION['id']))
{
echo "<a href='logout.php?d=logout'>Iziet</a>";
}

if(isset($_SESSION['id']))
{
echo "neesi ielogojies";
}

?>

Liels paldies ja kāds palīdzēs.

Link to comment
Share on other sites

Par pirmo problēmu - tas tāpēc, ka skriptā droši vien nav session_start();

 

Un otrā problēma ir tāpēc, ka ir pirmā problēma.

 

hmnc, ar to session_destroy() vispār ir interesanti. Tas neiznīcina $_SESSION masīva saturu.

 

session_destroy() destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie.

 

Man vispār nav skaidrs, ko tad viņš tur īsti iznīcina.

 

Katrā ziņā - $_SESSION = array(); does the job.

Link to comment
Share on other sites

Tagad vienalga abos gadījumos rāda 'neesi ielogojies'.

 

Darīju kā teici,

 

<?php

if(!isset($_SESSION['id']))
{
  echo "neesi ielogojies";
}

if(isset($_SESSION['id']))
{
echo "<a href='logout.php?d=logout'>Iziet</a>";
}

?>

Link to comment
Share on other sites

×
×
  • Create New...