سلام
یه کد نوشتم که IP کسایی که وارد سایتم شدن رو ذخیره میکنه. حالا میخوام یه کد بنویسم که کسایی که بیشتر از 3 بار وراد سایتم میشن رو Redirect کنه و اگه کمتر از 3 بار وارد سایتم شده باشن وارد صفحه بشن.
ممنون میشم راهنماییم کنید.
سلام
یه کد نوشتم که IP کسایی که وارد سایتم شدن رو ذخیره میکنه. حالا میخوام یه کد بنویسم که کسایی که بیشتر از 3 بار وراد سایتم میشن رو Redirect کنه و اگه کمتر از 3 بار وارد سایتم شده باشن وارد صفحه بشن.
ممنون میشم راهنماییم کنید.
آخرین ویرایش به وسیله paulooo : چهارشنبه 06 شهریور 1398 در 11:15 صبح
دوستان کسی نیست کمک کنه بتونم این کد رو درست کنم یا یه کد دیگه بده تا مشکلم حل بشه؟؟؟؟
با توجه به کدی که نوشتید اینطور به نظر میرسی که هر خط از فایل رو که میخونه عمل ریدایرکت رو انجام میده که درست نیست. شما باید فایل رو تا آخر بخونید بعد مقدار شمارنده رو کنترل کنید. بهتر پارامترهای لازم برای کنترل دسترسی و عدم دسترسی رو فقط داخل حلقه مقداردهی کنی و بعد از اتمام حلقه چک کنی که آیا امکان دسترسی دارند یا نه و بعد به مسیر مناسب ریدایرکت کنی
آخرین ویرایش به وسیله mostafa272 : دوشنبه 04 شهریور 1398 در 11:26 صبح
سلام
کدم رو تغییر دادم ولی مشکلش اینجاست که شمارندش نمیدونم چرا درست کار نمیکنه؟
آخرین ویرایش به وسیله paulooo : چهارشنبه 06 شهریور 1398 در 11:16 صبح
من نمیدونم چرا انقد فضای خالی چسبوندی به ip
ممکنه همینا خراب کنه کار رو
توی حلقت string رو خروجی بگیر ببین چی دار از فایل میخونی مطمئنی بشی درسته
نکته دیگه echo هاییه که گزاشتی ... تو صفحه وقتی خروجی داشته باشی مثل echo هدر کار نمیکنه ... خلاصش اینکه هرچی echo داری بردار صفحه نباید چیزی خروجی بده
سلام
خیلی ممنون از راهنمایی و پاسختون ولی ببخشید منظورتون رو متوجه نشدم.
آخرین ویرایش به وسیله paulooo : چهارشنبه 06 شهریور 1398 در 11:17 صبح
دستور هدر برای رفتن به صفحه دیگه اصلا echo نداره
$ip =$_SERVER['REMOTE_ADDR'];
$counter = 0;
$fn = fopen("ip.txt","r");
$limit = false ;
while($lines = fgets($fn))
{
$string = trim(preg_replace('/\s+/', ' ', $lines));
if ($ip == $string)
{
$counter ++;
}
if($counter >= 3)
{
$limit = true ;
break ;
}
}
fclose($fn);
if($limit )
{
header("Location: http://localhost/no.php");
}
else
{
file_put_contents('ip.txt', $ip . "\n", FILE_APPEND);
header("Location: http://localhost/ok.php");
}
سلام
خیلی ممنون و تشکر از پاسختون و احسنت به شما