PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : پیش شرط در php + برای کاربران یک سایت



benya344
June 25th, 2016, 19:40
با عرض سلام خدمت همه دوستان ،

بنده یک سوالی دارم . اگه کسی میتونه کمک کنه .
ما یک سیستم مدیریت محتوای php رو میخوام کمی تغییربدم.
کد اینه
<?PHPsession_start();//ini_set('display_errors' , 'on');define("SECURITY_CHECK" , "alo");
require_once("inc/_public-class.php");$admin = new _public();
require_once("setting.php");$connection_string = '';$do = '';$connection_string = $admin->connection_mysql();if ($connection_string == 'true'){ if (isset($_GET['do'])) $do = $admin->superinj($_GET['do']); else $do = 'main'; $orginal_do = $do; if ($do == 'index') $do = 'main'; if (!file_exists("modules/".$do.".php")) $do = 'notfound'; if ($do == 'static') { $orginal_do = 'static_'.$_GET['page']; } $s[$orginal_do] = ' class="active" '; require_once("header.php"); require_once("modules/".$do.".php"); require_once("footer.php");}else echo $admin->system_message($connection_string);


سه تا بخش برای سایت تعریف شده . هدر - ماین و فوتر !


$s[$orginal_do] = ' class="active" '; require_once("header.php"); require_once("modules/".$do.".php"); require_once("footer.php");
من میخوام بیام شرط بزارم و بگم در صورتی که کاربر عضو وارد شد به جای header.php . فرض header2.php رو نشون بده فقط . و دیگه header.php برای کاربر عضو نیاد.
در عین حال برای کاربر مهمان هم مشکلی پیش نیاد.
میشه راهنمایی کنید.

T.Toosi
June 25th, 2016, 20:09
سلام باید ابتدا ببینید این مدیریت محتوا کلاس یا تابعی برای چک کردن ورود کاربر دارد یا نه.

benya344
June 25th, 2016, 21:17
سلام باید ابتدا ببینید این مدیریت محتوا کلاس یا تابعی برای چک کردن ورود کاربر دارد یا نه.
سلام .ممنون .
احتمالا همون لاگین هست .
فک کنم
.$_SESSION['login']['name']
چطور دقیق بفهم ؟!

Rezash
June 25th, 2016, 21:40
سلام .ممنون .
احتمالا همون لاگین هست .
فک کنم
.$_SESSION['login']['name']
چطور دقیق بفهم ؟!

بعد session_start کد زیر رو بزنید :


print_r( $_SESSION );

و خروجی رو بررسی بفرمایید.

benya344
June 25th, 2016, 21:56
یه نام کاربری تستی ساختم . خروجی دستور پرینت :
Array ( [login] => Array ( [id] => 4 [name] => 7777 [mobile] => 09334444444 [email] => drea444@gmail.com [username] => 09334444444 [password] => a18875dbebe8aaab9180d52cc2bc54926834ec43 [date] => 1395-03-17 [time] => 1465234019 [status] => فعال [balance] => 0 [shopname] => [shopnumber] => [dailymax] => 2000000 [dailyused] => 0 [overplus_direct] => 0 [overplus_pin] => 0 ) )

Rezash
June 25th, 2016, 22:09
ابتدا مطمین بشید در حالتی که کاربر خروج رو میزنه دیگه این ارایه وجود نداره. البته طبیعتا نباید وجود داشته باشه و فقط جهت اطمینان عرض میکنم
به این صورت می تونید کاری که مد نظرتون هست رو انجام بدید:


if( !empty( $_SESSION['login']['id'] )
{
require_once('header2.php');
}
else
{
require_once('header.php');
}


- - - Updated - - -

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

benya344
June 25th, 2016, 22:22
خیلی لطف کردی . ممنون از پاسخ شما.

چه فکر جالبی . الان شما شرط گذاشتین که اگه لاگین و ایدی خالی بود !(کاربر میهمان ) با درخواست پیج یا همون هدر مشخص رو به رو شه .
--
فقط وقتیی میزارمش تو کد اول که بالا گذاشتم ارور سنتیکس میده !
یکم بیشتر راهنمایی میکنی.

Mr.programmer
June 25th, 2016, 22:25
خیلی لطف کردی . ممنون از پاسخ شما.

چه فکر جالبی . الان شما شرط گذاشتین که اگه لاگین و ایدی خالی بود !(کاربر میهمان ) با درخواست پیج یا همون هدر مشخص رو به رو شه .
--
فقط وقتیی میزارمش تو کد اول که بالا گذاشتم ارور سنتیکس میده !
یکم بیشتر راهنمایی میکنی.

ارور سینتکس بخاطر اینه که یه پرانتز کمتر بود

این درسته



if( !empty( $_SESSION['login']['id'] )){require_once('header2.php');}else{require_once( 'header.php');}

benya344
June 25th, 2016, 22:35
Mr.programmer (http://www.webhostingtalk.ir/member.php?u=121319) ،Rezash (http://www.webhostingtalk.ir/member.php?u=6213) ،T.Toosi (http://www.webhostingtalk.ir/member.php?u=111042) : ممنون از شما . واقعن با هم فکری میشه مشکلات رو حل کرد. سپاسگذارم .

جواب داد. بارم ممنون