با سلام اساتید محترم
چطوری میشه توی فریمورک yii مقدار ip رو کش کرد؟
یعنی یه ip رو برای تموم کاربران تا چند ساعت کش کنیم که فقط این آپی نشون داده بشه؟
آیا راهی هست؟
خیلی ممنون میشم راهنمایی کنید بهش نیاز دارم
با تشکر
 
			
			 
  
  کش کردن متغییر آی پی در Yii
 کش کردن متغییر آی پی در Yii
				با سلام اساتید محترم
چطوری میشه توی فریمورک yii مقدار ip رو کش کرد؟
یعنی یه ip رو برای تموم کاربران تا چند ساعت کش کنیم که فقط این آپی نشون داده بشه؟
آیا راهی هست؟
خیلی ممنون میشم راهنمایی کنید بهش نیاز دارم
با تشکر
 
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				کد PHP://set
Yii::$app->cache->set ( $key, $value, 60 * 60); //1h
//get
Yii::$app->cache->get( $key) ;
پارامتر سوم به ثانیه هست مدت زمان ذخیره کش هست .
 
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				ویرایش توسط Marshall : December 12th, 2019 در ساعت 18:16
 
			
			 
  
  
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				خیلی ممنون از محبت شما دوست عزیز
یعنی اینطوری همه ی کاربران همین آپی رو برای مدت یکساعت می بیند؟
الان من نمی تونم echo کنم ببینم ip واقعا برای همه این است؟
مثلا این آی پی کاربران است که متغیر هستند!
من می خوام آی پی یکی از کاربران تا زمان بخصوصی cache بشه و همه ی کاربران بجای اینکه ip خودشون رو ببیند ip ی که کش شده رو ببیند و باز هم بعد از یک ساعت دیگه یه آی دیگه کش بشه و این روند ادامه داشته باشه
من به echo هم نیاز دارم که تابعش رو فراخوانی کنم!
 
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				درود
ببینید وقتی یکی سوال میپرسه از یک فریمورک بنا بر این میزاریم ایشون php بلد هست و گیر اون بخش خاص فریمورک هست
بهرحال
کد PHP:Yii::$app->cache->set ( 'user_ip', Yii::$app->getRequest()->getUserIP(), 60 * 60);
$ip_az_cache=Yii::$app->cache->get( 'user_ip') ;
// hala $ip_az_cache har ja khasti cho kon ya mostaghim Yii::$app->cache->get( 'user_ip') ; echo kon
//ama dorostesh ine chek koni bebini baraye in user ip cache dari (kamtar az zaman masalan 1 saat) agar nabood az ip jadidd echo koni
if (Yii::$app->cache->get( 'user_ip')){
echo Yii::$app->cache->get( 'user_ip');
}else{
echo Yii::$app->getRequest()->getUserIP();
}
-----
 
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				
از لطف و محبت شما بسیار ممنون و سپاسگزارم
ببخشید شما رو هم به زحمت انداختم
ببخشید این رو هم می تونید جواب بدید؟
من با این توضیحات و کدهای شما کد زیر رو نوشتم:
انتظار داشتم کاربران وقتی از این صفحه به اون صفحه سایت که میرن فقط زیر تموم صفحات $_SERVER['HPPT_REFERER'] ذخیره شده را ببیند ولی با هر بار صفحه عوض کردن آدرس اینم عوض میشه!کد PHP:
<?php Yii::$app->cache->set( 'in_page', $_SERVER['HPPT_REFERER'], 60 * 60);
$inpage_cache=Yii::$app->cache->get( 'in_page') ;
?>
<?php echo $inpage; ?>
خیلی ممنون میشم اینم جواب بدید
بخاطر کمکتون هم خیلی ازتون ممنون و سپاسگزارم
ویرایش توسط Marshall : December 13th, 2019 در ساعت 01:51
 
			
			 
  
  پاسخ : کش کردن متغییر آی پی در Yii
 پاسخ : کش کردن متغییر آی پی در Yii
				شما باید از ایندکس
استفاده کنید رفر برای آدرس ارجاع هست نه آی پی کاربرکد PHP:$_server['remote_addr']
- - - Updated - - -
البته اگر منظورتون اینه میخواید رفر اولی ثبت بشه اینم باید کش کنید بهمون شکل آی پی
البته نیاید باز همون کدها رو بنویسید بهتره بزاریدش در یک آرایه و کل آرایه رو کش کنید یا برای استفاده کامل کل هدر رو تبدیل کنید به یک جیسون و کل جیسون رو کش کنید و اگر سختتون هست خب مجدد کدها رو بزارید و بازنویسی کنید برای رفرال (گرچه اصولی نیست اما خب ...)
ویرایش توسط starting : December 13th, 2019 در ساعت 02:07
-----
در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)