PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : غیر فعال کردن لینک پس از زدن به روی آن



IRIS
09-30-2014, 06:44 AM
سلام من یه کدی میخوام ک وقتی کاربر روی یک لینکی زد تا 10 دقیقه اون لینک براش غیرفعال شه ..زمان هم از روی ساعت هاست تشخیص بده ک تقلب نشه
برای تشخیص کاربر یا از روی ip شخص زمان شروع کنه یا نام کاربریش

admin
09-30-2014, 06:07 PM
سلام دوست عزیز. اینم از کدی که میخواستید.

<script>
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*10*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}

function chk()
{
document.getElementById('pi3idlmain').innerHTML = '<a href="#" target="_blank">salam</a>';
var user = getCookie("link");
if (user != ""){}
else {
setCookie("link", "opened", 1);
document.getElementById('pi3idlmain').innerHTML = '<a href="Only the registered members can see the link" target="_blank">salam</a>';
}
}
window.onload = chk;
</script>
<span id="pi3idlmain" onclick="chk();setTimeout(function(){chk()}, 10010);"></span>

IRIS
10-01-2014, 06:40 AM
سلام دوست عزیز. اینم از کدی که میخواستید.

<script>
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*10*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}

function chk()
{
document.getElementById('pi3idlmain').innerHTML = '<a href="#" target="_blank">salam</a>';
var user = getCookie("link");
if (user != ""){}
else {
setCookie("link", "opened", 1);
document.getElementById('pi3idlmain').innerHTML = '<a href="Only the registered members can see the link" target="_blank">salam</a>';
}
}
window.onload = chk;
</script>
<span id="pi3idlmain" onclick="chk();setTimeout(function(){chk()}, 10010);"></span>


ممنون خیلی مفید بود فقط چن سوال با رفرش کردن صفحه یا پاک کردن کوکی یا حذف # از پایان لینک که لینک فعال نمیشه؟؟
میخوام لینکش مث لینکای 4SHared که میگه 40 ثانیه دیه لینک دانلود میاد اون مدل باشه فقط با مدت زمان بیشتر، اونم برا هر کابر به صورت جدا..

یا به این مدل که هرکاربری روی لینکه زد لینک براش دیه کار نکنه برا بار دوم مث سایت Donkeymail که وقتی یه بار رو لینک زدی میگه قبلا زدین منقضی شده..

هرکدوم ک براتون میسره برام کدش بگید(اگه دومیه رو بتونید اونم حرفه ایش خیلی ممنون میشم)

admin
10-01-2014, 09:12 PM
سلام دوست عزیز. اینم از کد با تغییراتی که میخواستید. در ضمن کد اولی که بهتون دادم یه مشکل کوچیکی داشت اونم به جای 10 دقیقه ، 10 ثانیه بود.

<script>
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*10*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}

function chk()
{
document.getElementById('pi3idlmain').innerHTML = '<del><a href="#" target="_blank">لینک شما</a></del> <em> لینک منقضی شده</em>';
var user = getCookie("link");
if (user != ""){}
else {
setCookie("link", "opened", 1);
document.getElementById('pi3idlmain').innerHTML = '<a href="Only the registered members can see the link" target="_blank">لینک شما</a>';
}
}
window.onload = chk;
</script>
<span id="pi3idlmain" onclick="chk();setTimeout(function(){chk()}, 600010);"></span>
در ضمن با هر زبانی نوشته بشه که بر اساس کوکی باشه ، با حدف کوکی این لینک مجدد فعال میشه. تنها راه دور نزدن هم کار با دیتابیس هست که این اطلاعات رو ذخیره کنه تو هاستتون(ولی یه مشکلی هم داره اینه که دیتابیس رو سنگین تر میکنه).

IRIS
10-02-2014, 05:59 AM
سلام دوست عزیز. اینم از کد با تغییراتی که میخواستید. در ضمن کد اولی که بهتون دادم یه مشکل کوچیکی داشت اونم به جای 10 دقیقه ، 10 ثانیه بود.

<script>
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*10*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}

function chk()
{
document.getElementById('pi3idlmain').innerHTML = '<del><a href="#" target="_blank">لینک شما</a></del> <em> لینک منقضی شده</em>';
var user = getCookie("link");
if (user != ""){}
else {
setCookie("link", "opened", 1);
document.getElementById('pi3idlmain').innerHTML = '<a href="Only the registered members can see the link" target="_blank">لینک شما</a>';
}
}
window.onload = chk;
</script>
<span id="pi3idlmain" onclick="chk();setTimeout(function(){chk()}, 600010);"></span>
در ضمن با هر زبانی نوشته بشه که بر اساس کوکی باشه ، با حدف کوکی این لینک مجدد فعال میشه. تنها راه دور نزدن هم کار با دیتابیس هست که این اطلاعات رو ذخیره کنه تو هاستتون(ولی یه مشکلی هم داره اینه که دیتابیس رو سنگین تر میکنه).

ممنون از پاسخگویی سریع ..من یه روش در ذهنمه ک فک کنم زیاد دیتابس سنگین نکنه به صورت الگویی بیانش میکنم تا کامل متوجه بشید مثلا شخص IRIS عضو سایت هس و ما میخواییم لینکایی برا او بزاریم تا کلیک کنه و امتیاز بگیره برا اینکار میتونیم در قسمتی از لینک اسم کاربری ثبت کنیم..اینجور هر لینک به اسم خودش ثبت میشه..برا محدود شدن لینکم میتونیم کدی بنویسیم ک با زدن رولینک یه زمان از اینده به لینک اضافه کنه سپس با کلیک سایت چک میکنه زمان رسیده یا هنوز نه اگه رسیده بود یا رد کرده بو از زمان مد نظرلینک اجرا شه ..همین جور تا به اخر ..توضیح مختصرش به شکل زیر میشه:

IRIS login==>Only the registered members can see the link

به شکل دیگر این اتفاق باید انجام شه که با عضویت هر شخض لینک ها با اسم او تغییر شکل پیدا کنند

TIME:به محض زدن روی لینک یه زمان در اینده به لینک اضافه و جایگزین لینک قبلی میشه (مثلا 2 ابان ساعت 17)اگه به زمان اعلام شده رسید بود یا گذشته بود سایت امتیاز بده و کار کنه در غیر اینصورت پیغام هنوز لینک فعال نیس نشان بده

admin
10-02-2014, 05:12 PM
ممنون از پاسخگویی سریع ..من یه روش در ذهنمه ک فک کنم زیاد دیتابس سنگین نکنه به صورت الگویی بیانش میکنم تا کامل متوجه بشید مثلا شخص IRIS عضو سایت هس و ما میخواییم لینکایی برا او بزاریم تا کلیک کنه و امتیاز بگیره برا اینکار میتونیم در قسمتی از لینک اسم کاربری ثبت کنیم..اینجور هر لینک به اسم خودش ثبت میشه..برا محدود شدن لینکم میتونیم کدی بنویسیم ک با زدن رولینک یه زمان از اینده به لینک اضافه کنه سپس با کلیک سایت چک میکنه زمان رسیده یا هنوز نه اگه رسیده بود یا رد کرده بو از زمان مد نظرلینک اجرا شه ..همین جور تا به اخر ..توضیح مختصرش به شکل زیر میشه:

IRIS login==>Only the registered members can see the link

به شکل دیگر این اتفاق باید انجام شه که با عضویت هر شخض لینک ها با اسم او تغییر شکل پیدا کنند

TIME:به محض زدن روی لینک یه زمان در اینده به لینک اضافه و جایگزین لینک قبلی میشه (مثلا 2 ابان ساعت 17)اگه به زمان اعلام شده رسید بود یا گذشته بود سایت امتیاز بده و کار کنه در غیر اینصورت پیغام هنوز لینک فعال نیس نشان بده

این چیزی که من متوجه شدم شما میخواهید زمان رو بر روی آدرس بارگزاری کنید. با این کار کاربراتون خیلی راحت تر میتونن سایتتون رو دور بزنن(فقط با تغییر خیلی کوچیک آدرس) ولی با تغییر کوکی خیلی سخت تر میشه کارشون.

IRIS
10-03-2014, 07:28 AM
این چیزی که من متوجه شدم شما میخواهید زمان رو بر روی آدرس بارگزاری کنید. با این کار کاربراتون خیلی راحت تر میتونن سایتتون رو دور بزنن(فقط با تغییر خیلی کوچیک آدرس) ولی با تغییر کوکی خیلی سخت تر میشه کارشون.


این چیزی که من متوجه شدم شما میخواهید زمان رو بر روی آدرس بارگزاری کنید. با این کار کاربراتون خیلی راحت تر میتونن سایتتون رو دور بزنن(فقط با تغییر خیلی کوچیک آدرس) ولی با تغییر کوکی خیلی سخت تر میشه کارشون.

روشی ک من گفتم شاید نقصایی داشته باشه اما من در اصل به دنبال اینم ک مثلا تبلیغ یه سایت میزارم سایتم بعد شخص ک روی تبلیغ زد 1 امتیاز به او بده وقتی بار دوم زد بگه هنوز زمان دوباره زدن نرسیده بدون امتیاز شخص وارد سایت بشه ..اما راجب دور زدنی ک گفتین اگه این مدل باشه چی ..مثلا لینک به این شکله:Only the registered members can see the link
این لینک باید به طور اوتامیک یه کپی ازش توو فایل txt تو زمان اینده ایجاد شه (یعنی این فایل باید 21 ابان ایجاد شه نه الان)خب شخص هر بار روی لینک میزنه باید لینکش با محتویات داخل TXT مقایسه شه (یه عمل تساوی ساده ریاضی 3=3)اما فایل ما هنوز وجود نداره یا مثلا پسورد ب روشه به هرشکل دیگری تا اون زمان موجود نیس ک عمل مقایسه صورت گیره برا همین ارور میده ..من کار ندارم ک طرف با تغیر لینک به سایت گوگل بره یا نه من میخوام اگه از روش اصلی رفت یه امتیاز گیرش بیاد هر بار ک زد..

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

admin
10-03-2014, 12:52 PM
سلام دوست عزیز. کدی که میخواستید نوشتم. قابل دور زدنم نیست. ولی داخل هاستتون فایل های زیادی ساخته میشه (به ازای هر کاربر یک فایل). در ضمن : به دلیل این که کد شما رو نداشتم کد زیر نیاز به یه سری ویرایش هایی داره که بهتون میگم تا انجام بدین.
کد زیر رو تو مکانی بزارید که میخواهید لینک به نمایش در بیاد.

<?
$username = "pi3idl";
$fexists = file_exists($username.".txt");
if ($fexists == 0)
{
$myfile = fopen($username.".txt", "w");
$txt = date("Y/m/d");
fwrite($myfile, $txt);
fclose($myfile);
}
$txt = file_get_contents($username.".txt");
if ($txt == date("Y/m/d"))
{
echo "Only the registered members can see the link".$username."&date=".$txt;
}
else echo "shoma ghablan Click kardin";
?>

ویرایشات کد بالا : تو خط دوم نام کاربری pi3idl باید به نام کاربری کاربراتون تغییر کنه. تو خط 14 یه لینک ساخته شده . شما میتونید اون رو به کد لینک خودتون تغییرش بدین(توجه کنید که ساختار لینک باید همین باشه و اطلاعات به صورت get به لینک بعدی ارسال بشه) . تو خط 16 هم باید متنی که میخواهید نمایش داده بشه که کاربر بر روی لینک کلیک کرده باید قرار بگیره
حالا کد زیر رو بزارید تو صفحه ای که به سایت جدید منتقل میشه.

<?
$username = $_GET['user'];
$txt1 = file_get_contents($username.".txt");
if ($_GET['date'] == $txt1)
{
$myfile = fopen($username.".txt", "w");
$date = date("Y/");
$date = $date . date("m/");
$date2 = date("d")+1;
$date = $date . $date2;
fwrite($myfile, $date);
fclose($myfile);
//mitonid code haye dg ham ke mikhahid zire hamin khat bezarid
echo "Code enteghal be site";
}
else echo "You are cheating";
?>

ویرایشات کد بالا : تو خط 14 باید کدی قرار بگیره که به سایت دیگه منتقل بشه. تو خط 16 باید کدی قرار بگیره که به کاربر اطلاع بده داره تقلب میکنه. در صورتی که کد های اضافی هم میخواهید تو این صفحه اجرا کنید باید قبل خط 14 اضافه کنید.