ايران ويج

نسخه‌ی کامل: گرفتن مقدار یک session با ajax
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
برادر من داده ای تو کلاینت ذخیره نمیشه بجز PHPSESSID=f189cfd578c9c23a140188b25fd34abc
تمام اطلاعات تو کامپیوتری هست که سایتتون روش نصبه

شما کجا دیدی ؟
سلام شما فقط یک لطفی بکنید یک کد آجاکس بدهید تا من بتونم از طریق اون session را بگیرم مشکلم حل میشه
موفق باشید
من که نفهميدم چرا ميخوای اين کارو بکنی.Whistle
گرفتن SESSION با javascirpt به صورت مستقيم امکان نداره، تنها راهش اينه که يه فايل php يا يک function جدا بزاری واسه گرفتن SESSION و بعد با ajax مقدار اون function رو بخونی.
فايل php
کد php:
<?php 
    session_start
(); 
    
$myValue $_SESSION['codeha']; 
    echo 
$myValue;
?>
و قسمت ajax
کد php:
$(document).ready(function(){
         $.
ajax({
             
url:'/your.php',
             
cache:false,
             
success:function(data){
                 if(
data=="abcd"){
                     
// Do something with the result
                 
}else{ 
                    
// Do something else
                 
}
             }
         );
      }); 
موفق باشی

و اگه این کارو بکنید دیگه چه کاریه ؛ از کوکی استفاده کنید دیگه !!! :)
بابی جان منم واسه همين گفتم نفهميدم که واسه چی ميخوادBiggrin
شايد نميخواد که مقدار رو save کنه تو کوکی ( حالا به هر دليلی )
ولی فکر ميکنم که اين دوستمون دقيقاً متوجه اين موضوع نيست که با html نميشه به session دسترسی داشت.
خيلی ها session رو با کوکی اشتباه ميگيرن. Shy
سلام
چرا من فرق بین کوکی و session را میدانم ولی آیا این امکان وجود ندارد مثلا مثدار f189cfd578c9c23a140188b25fd34abc را با آجاکس بگیریم اگر کد document.cookie را در جاوا اسکریپت اجرا کنیم مقدار session را f189cfd578c9c23a140188b25fd34abc بر می گرداند حالا میشه همین کار را در آجاکس کرد؟
نقل قول: بابی جان منم واسه همين گفتم نفهميدم که واسه چی ميخواد
راستش رو بگم من هم نمیفهمم :)
احتمالا تو درک یه قسمت ار فرایند دچار مشکل شده یا اینکه یکی بد راهنماییشون کرده
--------------------------
آجاکس میدونید چیه ؟؟
یسری دستورات جاوا اسکریپیت هست که یچیزایی میفرسته یه هر سایتی که ما میخواییم

حالا شما در جاوا اسکریپت به هر چیزی دسترسی داشته باشید ؛ میتونید اون رو ارسال کنید

پس نتیجه میگیریم که : چون در جاوا اسکرسپت به document.cookie دسترسی داریم ؛ میتوانیم هر مقداری که document.cookie به ما داد رو در آجاکس بکار بگیریم ؛


سلیس تر از این نمیشد توضیح داد دیگه
سلام دوست عزیز
session در اصل مثل یک array عمل میکنه که میشه توش اطلاعات ذخیره کرد.
این اطلاعات روی سرور ذخیره میشن و از طریق client مستقیم قابل دسترسی نیستند.
ajax یا java script تکنولوژی های client side هستند یعنی قادر نیستند مستقیما به session دسترسی داشته باشند.
در نتیجه شما هم برای نوشتن و هم برای خوندن اطلاعات در session باید از یک تکنولوژی server side استفاده کنی. برای نمونه من این کد رو با php و jquery نوشتم که میتونی خودت تغییرش بدی.
فایل ها رو روی هاست ذخیره کن و فایل html رو باز کن

فایل اول برای نوشتن مقدار در session
کد php:
<?php
// 1.php
// initializing session and writing a value into it
session_start();
$_SESSION['key'] = "value";
echo 
'Writing value done ...';
?>

فایل دوم برای خواندن مقدار ذخیره شده
کد php:
<?php
// 2.php
// return the defined value 
session_start();
echo 
'Your Session-Value: '.$_SESSION['key'];
?>

این هم فایل HTML

کد php:
<html>
   <
head>
      <
script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
      <
script>
         $(
document).ready(function(){
             $(
'#btn_write_value').click(function(){
                $.
ajax({  
                    
url"1.php"
                    
cachefalse})
                    .
done(function( html ){$("#result_container").text(html);
                });
             });
             $(
'#btn_get_value').click(function(){
                $.
ajax({  
                    
url"2.php"
                    
cachefalse})
                    .
done(function( html ){$("#result_container").text(html);
                });
             });
         });
      </
script>
   </
head>
   <
body>
       
1. <button id="btn_write_value">Write Value</button>
       <
br/>
       
2. <button id="btn_get_value">Get Value</button>
      <
br/>
      <
div id="result_container"></div>
   </
body>
</
html

فقط توجه داشته باش که هیچ گونه اطلاعات محرمانه ای مثل پسورد رو از این طریق ردوبدل نکن چون به راحتی خونده میشه
دلیل اصلی استفاده از session به جای cookie اینه که اطلاعات session رو فقط میشه از طریق کد نوشته شده روی سرور خوند و قابل دسترس همه نیست.

موفق باشی
صفحه‌ها: 1 2