PDA

View Full Version : مشکل یا سشن session



mohammad-gh
شنبه 29 بهمن 1390, 19:58 عصر
سلام
راستش من تو سایتم یه مشکل عجیب دارم
وقتی کاربر وارد میشه با سشن اون رو ثبت می کنم با این کدها‌:


session_register("myusername");
$_SESSION['myusername']=$myusername;
session_register("mypassword");
در ابتدای هر صفحه اون رو با کدهایی که در زیر آوردم چک می کنم


if(!isset($_SESSION['myusername']) || (trim($_SESSION['myusername']) == '')) {
header("Location: exit.php");
exit();
}
منظور من این هست که کاربر بازدید کننده از یک صفحه خاص حتما عضو باشه و بدون عضویت نتونه اون صفحه رو ببینه
برای همین منظور خواستم وقتی کاربری سشن نام کاربریش خالی بود بره به یک صفحه خاص!
اما این هیچ وقت اجرا نمیشه
ببینید مشکل از کجاست

wordnet
شنبه 29 بهمن 1390, 20:10 عصر
سلام

منم دقیقا مشکل شمارو داشتم این تاپیکو زدم بخونید مشکلتون حله
http://barnamenevis.org/showthread.php?328474-%D8%AC%D9%84%D9%88%DA%AF%DB%8C%D8%B1%DB%8C-%D8%A7%D8%B2-%D9%88%D8%B1%D9%88%D8%AF-%D9%82%D8%A8%D9%84-%D8%A7%D8%B2-%D9%84%D9%88%DA%AF%DB%8C%D9%86

masoud_tamizy
شنبه 29 بهمن 1390, 20:10 عصر
کد کامل صفحتون رو بگذارید یا حداقل کل عملیاتی که روی session انجام می دید رو بزارید

mohammad-gh
شنبه 29 بهمن 1390, 20:31 عصر
کل عملیاتی که روی سشن می کنم همین هست
دز صفحه چک کردن یوزر و پسورد اگر درست بود با کد اول در سشن ثبت می کنم
و در بالای تمام صفحاتی که مخصوص کاربرهاست کد دوم رو میزارم تا اگر کاربر نبود از صفحه خارج بشه

MMSHFE
شنبه 29 بهمن 1390, 20:34 عصر
دوست عزیز، تابع Header شما چرا داره به خود صفحه جاری ریدایرکت میکنه؟ باید به صفحه لاگین کاربر رو هدایت کنید.

masoud_tamizy
شنبه 29 بهمن 1390, 21:58 عصر
آقای شهرکی درست می فرمایند . اگر درست نشد با این نکته طرح بفرمایید تا بررسی شود .

mohammad-gh
دوشنبه 01 اسفند 1390, 20:41 عصر
سلام
نه این یک مثال بود
من به صفحه exit.php هدایت می کنم که به کاربره پیام میده از سایت خارج شده و دوباه وارد بشه
مدام در این موردگزارش میدن
موندم از کجاست مشکل

MMSHFE
سه شنبه 02 اسفند 1390, 08:04 صبح
خوب اینکه میگین «این هیچ وقت اجرا نمیشه» خیلی کلی هست. دقیقاً میشه بگین مشکل چیه و درصورت امکان، کد اصلی رو بگذارین نه کد نمونه رو. موفق باشید.

mohammad-gh
سه شنبه 02 اسفند 1390, 21:11 عصر
83126کد اصلی همین بود
حتی فایلش رو هم گذاشتم
مشکل اینه که وقتی کاربری به مدت سی یا سی پنج دقیقه بدون فعالیت می ماند و بعد قصد رفتن به صفحه ای دیگر را دارد با توجه به کدهای نوشته شده باید به صفحه exit.php هدایت شوداما به صفحه ای که می خواهد می رود اما با کاربری بدون نام و نشان (خالی) .
کد سشن رو یک فایل کردم و در بالای همه صفحات include کردم!

MMSHFE
سه شنبه 02 اسفند 1390, 21:53 عصر
کدهای شما چرا session_start رو ابتدای کد فراخوانی نمیکنه؟

mohammad-gh
جمعه 05 اسفند 1390, 18:44 عصر
من که این کد رو اول صفحه گذاشتم

session_start();
یا منظور شما چیز دیگری هست

MMSHFE
جمعه 05 اسفند 1390, 19:07 عصر
یکبار تابع session_register رو حذف کنید ببینید مشکل رفع میشه یا نه چون این تابع منسوخ شده. شاید باعث اخلال در کار بشه.

mahan19
جمعه 05 اسفند 1390, 21:42 عصر
کد کامل :

صفحه ی تخصیص سشن: مثل صفحه ی لوگین :


session_start();
$_SESSION['myuser']=$user


صفحه ای که میخواید چک کنید:

session_start();
if(isset($_SESSION['myuser']) $username=$_SESSION['umyuser'];else header('location:error.php')//comment

این کد خیلی سادست ، به همراه امنیت پایین

farhadfery
جمعه 05 اسفند 1390, 21:59 عصر
کد کامل :

صفحه ی تخصیص سشن: مثل صفحه ی لوگین :


session_start();
$_SESSION['myuser']=$user


صفحه ای که میخواید چک کنید:

session_start();
if(isset($_SESSION['myuser']) $username=$_SESSION['umyuser'];else header('location:error.php')//comment

این کد خیلی سادست ، به همراه امنیت پایین

عزیز اشتباه شما در غلط املایی هست. myuser نه اینکه نوشتسد.

mohammad-gh
جمعه 12 اسفند 1390, 18:46 عصر
مشکل من همین یه تکه کد منسوخ شده بود
session_register