• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ایراد عجیب در دو فایل با یک ساختار
#1
با سلام
یک سوال بدجوری اذیتم میکنه

کد های زیر رو در نظر بگیرید
کد صفحه pag1.php با کد صفحه page2.php برابر است و تنها فرق اینه که page1.php در root هست و page2.php در دو پوشه داخل روت
زمانیکه page1 اجرا میشه درست جواب میده ولی وقتی فایل page2 اجرا میشه جواب متفاوت است
لطفا بگید مشکل از کجاست ؟؟؟
خیلی تاجور درگیرشم

page1.php
کد:
<?php
session_start();

                        $time=time();
                        $hash1=md5($time);

                        setcookie("security",$hash1,time()+3600);                                           
                         $_SESSION["hashh"]=$hash1;
                      
                        $ip=$_SERVER["REMOTE_ADDR"];                        
                         $_SESSION["ip"]=$ip;
                        
                        $hash2=md5($hash1.$ip);                        
                        
                        $_SESSION["security"]=$hash2;
                        
                        
                        session_regenerate_id(true);
                        header("Location:000.php");



?>


page2.php
کد:
<?php
session_start();
                        $time=time();
                        $hash1=md5($time);


                        setcookie("security",$hash1,time()+3600);        
                        
                        $_SESSION["hashh"]=$hash1;                
                      
                        $ip=$_SERVER["REMOTE_ADDR"];                        
                         $_SESSION["ip"]=$ip;
                        
                        $hash2=md5($hash1.$ip);                        
                        
                        $_SESSION["security"]=$hash2;
                        
                        
                        session_regenerate_id(true);
                        
                        header("Location:../../000.php");
                        
                        
                        
                        
?>


000.php
کد:
<?php
session_start();



$hash1=$_COOKIE["security"];
$ip=$_SERVER["REMOTE_ADDR"];
$hash2=md5($hash1.$ip);


echo $hash1."<br>";
echo $_SESSION["hashh"]."<br>";

echo  $ip."<br>";
echo $_SESSION["ip"]."<br>";

echo $hash2."<br>";
echo $_SESSION["security"]."<br>";



?>
  پاسخ
تشکر شده توسط :
#2
نقل قول:زمانیکه page1 اجرا میشه درست جواب میده ولی وقتی فایل page2 اجرا میشه جواب متفاوت است

خب چه تفاوتی؟ چه خطایی؟... لطفا بیشتر توضیح بدین.
هر چیزی که در جستن آنی آنی...
غایب
  پاسخ
تشکر شده توسط :
#3
در فایل page2.php کوکی ست نمیشه ؟؟؟
علت چیه ؟؟؟

با تغییر کد
کد:
setcookie("security",$hash1,time()+3600);

به

کد:
setcookie("security",$hash1,time()+3600,'/');
درست شد
کار '/' چیه ؟؟؟
  پاسخ
تشکر شده توسط :
#4
کد:
bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

کد:
path

    The path on the server in which the cookie will be available on. If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.

لینک: http://php.net/manual/en/function.setcookie.php
هر چیزی که در جستن آنی آنی...
غایب
  پاسخ
تشکر شده توسط :


پرش به انجمن:


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