• 2 رای - 3 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
login
#1
سلام من این رو نوشتم برای صفحاتم
ولی با این که مطمئنم سشن ست می شه ولی این صفحه ذو نشون نمیده شما می دونین مشکل این کد چیه؟

کد پی‌اچ‌پی:
<?php  
session_start
(); 
session_regenerate_id(true);  
if(!isset(
$_SESSION['username']))
{
    
header("LOCATION:../index.php");
    }
    else{ 
  پاسخ
تشکر شده توسط :
#2
1- session_generate_id برای چیه؟؟؟؟
2- LOCATION رو با حروف کوچیک بنویس( ناسلامتی حساسه به کوچیک و بزرگ)
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط : scooter
#3
من روی لوکال هاست امتحان کردم جواب داد .

کد دو صفحه ای رو که ساختم رو همینجا میزارم

فایل index.php

کد پی‌اچ‌پی:
<?php

session_start
();
 if (isset(
$_POST['name']))
 {
     
$_SESSION['username']=$_POST['name'];
     
header("LOCATION:admin/admin.php");
 }

?>
<html>
<head>
</head>
<body>
<form method="post" action="">
    <input type="text" name="name" />
    <input type="submit" />
</form>
</body>
</html> 

ادرس صفحه دوم admin/admin.php

کد پی‌اچ‌پی:
<?php  
session_start
(); 
session_regenerate_id(true);  
if(!isset(
$_SESSION['username']))
{
    
header("LOCATION:../index.php");
}
else
{
    echo 
$_SESSION['username'];
}
?>
  پاسخ
تشکر شده توسط :
#4
session_generate_id برای چیه؟؟؟؟
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :
#5
برای بروزرسانی session , id استفاده میشه

این رو از سایت رسمی php گرفتم

کد پی‌اچ‌پی:
<?php
  session_start
();

  
$old_sessionid session_id();
  
$_SESSION['name']='example';
  
session_regenerate_id();

  
$new_sessionid session_id();

  echo 
"Old Session: $old_sessionid<br />";
  echo 
"New Session: $new_sessionid<br />\n";
 

  
print_r($_SESSION);
?>
  پاسخ
تشکر شده توسط : molana
#6
همین رو سیستم من جواب نمیده؟
فکر نکنم کد من مشکلی داشته باشه
  پاسخ
تشکر شده توسط :
#7
شاید امنیت مرورگرت بالا هست و کوکی ها روی مرورگرت ذخیره نمیشن .

بهتره امنیتش رو بیاری پایین

تو internet explorer میری به این ادرس tools->internet option->privacy در این قسمت , قسمت بالایی برای تنظیم کوکی هاییست که می تونند رو کامپیوتر شم ذخیره بشوند اون رو در حالت medium قرار بده
  پاسخ
تشکر شده توسط :
#8
سلام من این کار رو هم کردم ولی کار نمیکنه
ببینید این صفحه چک لوگین
کد پی‌اچ‌پی:
<?php
//if(isset($_POST['user']))
//{
require_once("../config.php");
$user=htmlspecialchars(strtolower(@$_POST['user']));
$pass=MD5(sha1(@$_POST['pass']));
 
$user_novalid preg_replace("([^a-z0-9_]*)"''$user);
 function 
sql_quote$value )
{
    if( 
get_magic_quotes_gpc() )
    {
          
$value stripslashes$value );
    }
   
 
    if( 
function_exists"mysql_real_escape_string" ) )
    {
          
$value mysql_real_escape_string$value );
    }
    else
    {
          
$value addslashes$value );
    }
    return 
$value;

$sql="SELECT user,pass FROM `login_admin` WHERE (user='".sql_quote($user)."' AND pass='".sql_quote($pass)."')";
$result=@mysql_query($sql);
if(@
mysql_num_rows($result)==1)
{
    
$_SESSION['username']=$user;
    
header("LOCATION:list.php");
    
//print("yes you can");
    
exit;
    }

    else{
    
header("LOCATION:loginlogin.php");
    
//print("no match user name ");
    
}
    
//}
?>


اینم صفحه admin
کد پی‌اچ‌پی:
<?php  
session_start
(); 
session_regenerate_id(true);  
if(!isset(
$_SESSION['username']))
{
    
header("LOCATION:../index.php");
    }
    else{ 
به نظر شما مشکل کجا ست
  پاسخ
تشکر شده توسط :
#9
در صورتی که یک فرم برای ورود اطلاعات داشته باشی که اطلاعات ورودی از طرف کاربر رو به این صفحه ارجاع بده

مشکل بعدیت این هست که در این صفحه باید قبل از استفاده از session اون رو start کنی و این کار هم به صورت زیر انجام میشه .

کد پی‌اچ‌پی:
session_start(); 

جلسه باید قبل از ارسال هر خروجی به صفحه start شده باشه در غیر اینصورت خطا میده .

در ضمن در شرط اخریت باید صفحه به جای list.php به ادرس admin.php ارجاع بشه
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان