Parašė Faitas.· 2011 Geg. 8 20:05:41
#1
Sveiki. Radau prisijungimą su sesijomis. Tik dabar atsirado dar viena problema. Vaikščiojant po profilį ( member-profile.php ), pagrindinį vartotojo vaizdą( member-index.php ). Noriu, kad vaikščiojant po Pagrindinį (index.php), registraciją (registration-form.php) ir išviso visur, ir kad neatsijungtų.
Bandžiau ir su setcookies ir su sesijomis kažką daryti, visur kišau, ir į prisijungimo tikrinimą, ir visur, bet nepavyksta. Kodas:
login-form.php:
<?php
include("config.php");
echo "<title>Prisijungimas</title>";
Navigacija();
echo "
<br />
<form id='loginForm' name='loginForm' method='post' action='login-exec.php'>
<table width='300' border='0' cellpadding='2' cellspacing='0'>
<tr>
<td width='112'><b>Vartotojo vardas</b></td>
<td width='188'><input name='login' type='text' class='textfield' id='login' /></td>
</tr>
<tr>
<td><b>Slaptažodis</b></td>
<td><input name='password' type='password' class='textfield' id='password' /></td>
</tr>
<tr>
<td> </td>
<td><input type='submit' name='Submit' value='Prisijungti' /></td>
</tr>
</table>
</form>
";
?>
login-exes.php:
<?php
include("config.php");
echo "<title>Klaida prisijungiant</title>";
Navigacija();
session_start();
require_once('config2.php');
$errmsg_arr = array();
$errflag = false;
function clean($str) {
$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}
$login = clean($_POST['login']);
$password = clean($_POST['password']);
if($login == '') {
$errmsg_arr[] = 'Vartotojas nerastas';
$errflag = true;
}
if($password == '') {
$errmsg_arr[] = 'Slaptazodis nerastas';
$errflag = true;
}
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: login-form.php");
exit();
}
$qry="SELECT * FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
$result=mysql_query($qry);
if($result) {
if(mysql_num_rows($result) == 1) {
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
$_SESSION['SESS_FIRST_NAME'] = $member['firstname'];
$_SESSION['SESS_LAST_NAME'] = $member['lastname'];
session_write_close();
header("location: member-index.php");
exit();
}else {
header("location: login-failed.php");
exit();
}
}else {
die("Tokio vartotojo nėra");
}
?>
login-failed:
<?php
include("config.php");
echo "<title>Nepavyko prisijungti</title>";
Navigacija();
echo "
<h1>Nepavyko prisijungti</h1>
<h4 class='err'>Nepavyko prisijungti!<br />
Prašome patikrinti jūsų vartotojo vardą ir slaptažodį</h4>
";
?>
Jei dar įdomu, tai member-profile ir member-index:
member-profile.php:
<?php
require_once('auth.php');
include("config.php");
echo "<title>Vartotojo profilis</title>";
Navigacija();
$id = $_SESSION['SESS_MEMBER_ID'];
$result = mysql_query( "SELECT * FROM members WHERE member_id='$id'" );
echo "<h1>Mano profilis</h1>";
if( mysql_num_rows( $result ) > 0 )
{
while( $row = mysql_fetch_array( $result ) )
{
echo "<div id='visas'>";
echo "<div id='vidus'>";
if( $row['firstname'] == '' or $row['firstname'] == 'Nera' or $row['firstname'] == 'Nėra' )
{
echo "<div class='vardas'>Vardas: Neapibūdintas</div>";
}
else
{
echo "<div class='vardas'>Vardas: $row[firstname]</div>";
}
if( $row['lastname'] == '' or $row['lastname'] == 'Nera' or $row['lastname'] == 'Nėra' )
{
echo "<div class='pavarde'>Pavardė: Neapibūdinta</div>";
}
else
{
echo "<div class='pavarde'>Pavardė: $row[lastname]</div>";
}
if( $row['age'] == '' or $row['age'] == 'Nera' or $row['age'] == 'Nėra' )
{
echo "<div class='amzius'>Amžius: Neapibūdintas</div>";
}
else
{
echo "<div class='amzius'>Amžius: $row[age]</div>";
}
if( $row['location'] == '' or $row['location'] == 'Nera' or $row['location'] == 'Nėra' )
{
echo "<div class='vieta'>Vieta: Neapibūdinta</div>";
}
else
{
echo "<div class='vieta'>Vieta: $row[location]</div>";
}
if( $row['skype'] == '' or $row['skype'] == 'Nera' or $row['skype'] == 'Nėra' )
{
echo "<div class='skype'>SkypeNAME: Neapibūdintas</div>";
}
else
{
echo "<div class='skype'>SkypeNAME: <a href='skype:$row[skype]'><span style='color:#99CC00'>$row[skype]</span></a></div>";
}
if( $row['login'] == '' )
{
echo "<div class='linfo'>Prisijungimo vardas: Neapibūdintas</div>";
}
else
{
echo "<div class='linfo'>Prisijungimo vardas: $row[login]</div>";
}
echo "</div></div>";
}
}
else
{
echo "<span style='color:#414141; font-family: Arial'>Nerasta jūsų informacija</span><br /><br />";
}
echo "<a href='member-index.php'><span style='color:#99CC00; font-family: Arial'>Grįšti atgal</span></a><br />
<a href='logout.php'><span style='color:#99CC00; font-family: Arial'>Atsijungti</span></a>";
?>
member-index.php:
<?php
require_once('auth.php');
include("config.php");
echo "<title>Vartotojo panelė</title>";
Navigacija();
echo "<h1>Sveiki atvykę " . $_SESSION['SESS_FIRST_NAME'] . ".</h1>";
echo "<a href='member-profile.php'><span style='color:#99CC00; font-family: Arial'>Mano profilis</span></a><br />
<a href='member-change.php'><span style='color:#99CC00; font-family: Arial'>Redaguoti profilį</span></a><br />
<a href='logout.php'><span style='color:#99CC00; font-family: Arial'>Atsijungti</span></a>
";
?>
Jei galit, pasakykit kaip tai padaryti :)
Redagavo Faitas.· 2011 Geg. 8 20:05:08