PDA

View Full Version : سوال: چگونگی نمایش لینک ها فقط برای کاربران عضو



ahmadbadpey
جمعه 03 آبان 1387, 17:43 عصر
با سلام
دوستان اگه من بخوام لینک های دانلود سایت من فقط برای کاربران عضو نمایش داده بشه باید چیکار کنم . البته می خوام برای کاربران غیر عضو به جای لینک ها دکمه ای نمایش داده بشه که اونها رو به صفحه ثبت نام سایت راهنمایی کنه .

yaqubian
جمعه 03 آبان 1387, 18:27 عصر
دوست عزیز
با session می تونی چک کنی که آیا شخص لاگین کرده یا نه؟ اگه ok بود که لینک نمایش داده می شه در غیر اینصورت شکل مورد نظر نمایش داده می شه.
موفق باشید

ahmadbadpey
جمعه 03 آبان 1387, 18:42 عصر
دوست عزیز
با session می تونی چک کنی که آیا شخص لاگین کرده یا نه؟ اگه ok بود که لینک نمایش داده می شه در غیر اینصورت شکل مورد نظر نمایش داده می شه.
موفق باشید
خوب مشکل اینجاست که چه جوری لینک ها رو تشخیص بدیم و به جاش دکمه رو بذاریم

yaqubian
جمعه 03 آبان 1387, 20:25 عصر
دوست عزیز
لینک ها رو کجا نگهداری می کنید؟ مثلا تو DB یا نه؟
موفق باشید

mojtaba_6485
جمعه 03 آبان 1387, 20:30 عصر
با سلام
دوستان اگه من بخوام لینک های دانلود سایت من فقط برای کاربران عضو نمایش داده بشه باید چیکار کنم . البته می خوام برای کاربران غیر عضو به جای لینک ها دکمه ای نمایش داده بشه که اونها رو به صفحه ثبت نام سایت راهنمایی کنه .
آیا از cms خاصی استفاده می کنید؟
با خودتون نوشتید؟

ahmadbadpey
جمعه 03 آبان 1387, 20:44 عصر
دوست عزیز
لینک ها رو کجا نگهداری می کنید؟ مثلا تو DB یا نه؟
موفق باشید

بله اون ها رو به صورت تگ های HTML داخل دیتابیس ذخیره می کنم

ahmadbadpey
جمعه 03 آبان 1387, 20:48 عصر
آیا از cms خاصی استفاده می کنید؟
با خودتون نوشتید؟

نه از cms خاصی استفاده نمی کنم و برای ریختن اطلاعات از یک فرم که شامل ادیتور fckeditor است برای ذخیره سازی داده ها به صورت HTML استفاده می کنم

ahmadbadpey
جمعه 03 آبان 1387, 20:55 عصر
مشکل من اینجا هم مطرح شده
http://barnamenevis.org/forum/showthread.php?t=124058
از اینجا هم برای راهنمایی کمک بگیرین

narsic
جمعه 03 آبان 1387, 23:46 عصر
با سلام
متونی یک تابع بسازی که در اون از تابع preg_replace استفاده کنی که اگه کاربر وارد نشده بود به جای www یا http یه دکمه اضاف کنه یا هرچیز دیگه .
موفق باشی

ahmadbadpey
شنبه 04 آبان 1387, 09:01 صبح
با سلام
متونی یک تابع بسازی که در اون از تابع preg_replace استفاده کنی که اگه کاربر وارد نشده بود به جای www یا http یه دکمه اضاف کنه یا هرچیز دیگه .
موفق باشی
خوب چه جوری اگه کسی تابعی داره بذاره .

farshad_persia
شنبه 04 آبان 1387, 13:47 عصر
فرض میکنیم که زمان لاگین کردن یک session به اسم log رو آغاز میکنه
آنگاه داریم :


<?php
session_start();

if($_SESSION['log'])
{

?>
<a href="test.php" >Test</a>

<?php
}

else
{
?>
To see this link you must <a href="register.php">login</a> first
<?php
}
?>

as13851365
یک شنبه 05 آبان 1387, 08:48 صبح
شما باید رشته خود رو دنبال لینک بگردید و بعد از این که لینک رو پیدا کردید اون رو به هر شکلی که خواستید نمایش بدید !

این کدی که می زارم رو از همین انجمن برداشتم یکی از دوستان زحمت این کار رو گشیده بود !





function hyperlink($text)
{
// match protocol://address/path/file.extension?some=variable&another=asf%
return preg_replace("/\s(([a-zA-Z]+:\/\/)([a-z][a-z0-9_\..-]*[a-z]{2,6})([a-zA-Z0-9\/*-?&%]*))\s/i", " <a href=\"$1\">$3</a> ", $text);
}


این تابع رشته رو می گیره و هر جا که آدرس پیدا کرد آن را به لینک تبدیل می کنه !

حالا شما بسته به سلیقه خودتان می تونید تغییرش بدید !
( این رو بکم که من خودم تاحالا ازش استفاده نکردم ها نمی تونم بگم که 100% جواب خوهد داد )

narsic
یک شنبه 05 آبان 1387, 14:28 عصر
شما باید رشته خود رو دنبال لینک بگردید و بعد از این که لینک رو پیدا کردید اون رو به هر شکلی که خواستید نمایش بدید !

این کدی که می زارم رو از همین انجمن برداشتم یکی از دوستان زحمت این کار رو گشیده بود !


این تابع رشته رو می گیره و هر جا که آدرس پیدا کرد آن را به لینک تبدیل می کنه !

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