PDA

View Full Version : سوال: ساخت فرم ثبت نام و تعیین سطح دسترسی کاربران با PHP



abbas3zaar
جمعه 06 اردیبهشت 1392, 08:07 صبح
سلام.
در رابطه با ثبت نام کاربران و سطح دسترسی آنها سوالاتی داشتم که خواستم از دوستان کمک بگیرم. میخوام تا وقتی کاربری ثبت نام نکرده نتونه توی یک صفحه لینک دانلود رو مشاهده کنه. این به چه صورت کد نویسی میشه؟ کلا به صورت تئوری توضیح بدین ممنون

lordofphp
جمعه 06 اردیبهشت 1392, 08:22 صبح
سلام
خوب هستین؟
خوب یه راه اینه که چاپ لینک دانلود توی if با استفاده از سشن انجام بدید مثلا



<?php
if($_SESSION['valid_users'])
echo $dbquery['downloadlink'];
else
echo'لطفا برای مشاهده لینک دانلود ثبت نام بفرمائید<br/>';
?>

$dbquery همون متغییری که باهاش اطلاعات از پایگاه داده میگیریم حالا با fetch_assoc و یا ...
ان شاء الله که مشکلتون حل میشه
درپناه وراه ایزدمنان پیروزو پایدارباشید

abbas3zaar
سه شنبه 10 اردیبهشت 1392, 21:52 عصر
درود.
یه سوال دیگه داشتم.
در مورد Role ها میشه توضیح بدین که چجوری پیاده سازی میشه.. مثلا یک فیلد permission در جدول کاربران بزاریم وقتی مقدارش 0 باشه کاربر معمولی باشه. وقتی 1 باشه مدیر باشه و بتونه وارد پنل بشه و مطلب ارسال کنه و البته سطح دسترسی به بعضی از بخش های مدیریت رو نداشته باشه مثلا بخش قالب و ... فقط بتونه مطلب ارسال کنه

siavashsay
پنج شنبه 12 اردیبهشت 1392, 10:07 صبح
درود.
یه سوال دیگه داشتم.
در مورد Role ها میشه توضیح بدین که چجوری پیاده سازی میشه.. مثلا یک فیلد permission در جدول کاربران بزاریم وقتی مقدارش 0 باشه کاربر معمولی باشه. وقتی 1 باشه مدیر باشه و بتونه وارد پنل بشه و مطلب ارسال کنه و البته سطح دسترسی به بعضی از بخش های مدیریت رو نداشته باشه مثلا بخش قالب و ... فقط بتونه مطلب ارسال کنه
این کاری نداره !
این عملیات رو باید توی صفحات مورد نیاز انجام بدید !
فرض بگیریم 2 تا صفحه داریم :
1- صفحه user_post.php ( که کاربران عادی با سطح دسترسی 0 میتونن از داخل اون پست بذارن )
2- صفحه admin_post.php ( مثل همون صفحه قبل اما کسانی که مدیر هستن با سطح دسترسی 1 میتونن پست خاصی بذارن )
حالا کد هر صفحه خیلی راحت هست - مثلا :
صفحه user_post.php که نیازی نداره ( البته منظور من اینه که هم کاربر معمولی و هم مدیر میتونه توش پست بذاره پس نیازی به عملیات خاص ( جلوگیری نیست )
اما صفحه admin_post.php


//db connect and other data
$username=$_SESSION['username'];
$sql=mysql_query("SELECT `perm` FROM `users` WHERE `username`='$username'");
$obj=mysql_fetch_object($sql);
$perm=$obj->perm;
//
if($perm=="0"){
header("Location:index.php?msgid=1");
exit;
}
// other code

در اینجا میایم و سطح دسترسی کاربر فعال رو چک میکنید ! اگر 0 بود ( کاربر معمولی ) به صفحه دیگه ای ریدایرکت میشه و اون متغیر GET هم واسه اینه که یک هندل باشه واسه نمایش پیغام مناسب توی صفحه مورد نظر
مثلا :



if(isset($_GET['msgid']) && $_GET['msgid']==1)){
echo "You dont have Admin Permission to Write any post";
}

امیدوارم موثر باشه !
موفق باشید :)