النتائج 1 إلى 9 من 9

الموضوع: مشكلة في إنشاء جلسة الجلسات (SESSION) ارجو المساعدة

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    111

    مشكلة في إنشاء جلسة الجلسات (SESSION) ارجو المساعدة



    السلام عليكم

    لدي مشكلة في السيشن حيث انني قمت ببناء برنامج كامل ونظام تسجيل الدخول شغال تمام لكن بعد تسجيل الدخول لايقوم بجلب بيانات العضو (أهلاً بك يا..) ويطلع جميع خيارات البرنامج فارغة مع اني مستخدم الكود التالي لبناء الجلسات :

    كود:
    session_start(); 
    if ($_SESSION['username'] == '')
    {
    include "loginerror.php";
    die;
    exit;
    break;
    }
    $username = $_SESSION['username'];
    ممكن احد يساعدني ؟؟







  2. #2
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2002
    المشاركات
    311


    اقتباس المشاركة الأصلية كتبت بواسطة الهاوي2004
    السلام عليكم

    لدي مشكلة في السيشن حيث انني قمت ببناء برنامج كامل ونظام تسجيل الدخول شغال تمام لكن بعد تسجيل الدخول لايقوم بجلب بيانات العضو (أهلاً بك يا..) ويطلع جميع خيارات البرنامج فارغة مع اني مستخدم الكود التالي لبناء الجلسات :

    كود:
    session_start(); 
    if ($_SESSION['username'] == '')
    {
    include "loginerror.php";
    die;
    exit;
    break;
    }
    $username = $_SESSION['username'];
    ممكن احد يساعدني ؟؟

    عندك خطأ بسيط جداً ..

    انت عكست اسناد القيمة
    كود PHP:
    $username $_SESSION['username']; 
    المفروض
    كود PHP:
    $_SESSION['username'] = $username






    __________________
    I love Php
    Email Only
    Ziyad(AT)alsharan.com ,I don't have Massenger

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    111


    عدلت الكود اخوي

    لكن نفس المشكلة مانحلت






  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2002
    المشاركات
    311


    اقتباس المشاركة الأصلية كتبت بواسطة الهاوي2004
    عدلت الكود اخوي

    لكن نفس المشكلة مانحلت
    اكيد عندك مشكله أخرى ، وهي قيمة $username ..

    تأكد انه $username لها قيمة ، كمثال ..

    كود PHP:
    session_start(); 
    if (
    $_SESSION['username'] == '')
    {
    include 
    "loginerror.php";
    die;
    exit;
    break;
    }
    echo 
    "تم تسجيل الدخول بأسم: ".$username;
    $username $_SESSION['username'];
    echo 
    "<br>الاسم المسجل في الجلسة: ".$_SESSION['username']; 
    وشوف هل يظهر لك الاسم او لا ..؟
    او ضع الكود لتسجيل الدخول كاملاً حتى نشوف المشكله بالضبط ..





    __________________
    I love Php
    Email Only
    Ziyad(AT)alsharan.com ,I don't have Massenger

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Jul 2003
    المشاركات
    240


    اخي في صفحة الدخول يجب ان تحفظ اسم المستخدم في السيشن بالشكل التالي:

    كود PHP:
    session_start();

    $info['username'] = 'M-Plus';
    $info['password'] = '123';

    if (
    $_POST['username'] == $info['username'] && $_POST['password'] == $info['password'])
    {
    $_SESSION['username'] = $_POST['username']; // قمنا بحفظ اسم المستخدم في المتغير $_SESSION['username']
    echo "تم تسجيل الدخول بنجاح";
    }
    else
    {
    echo 
    "لم يتم تسجيل الدخول بنجاح";

    الآن يمكنك الحصل على اسم المستخدم في اي مكان في السكربت عن طريق المتغير $_SESSION['username']

    على سبيل المثال، في ملف آخر:

    كود PHP:
    session_start();

    if(!isset(
    $_SESSION['username']))
    {
    include 
    "loginerror.php";
    die;
    }
    else
    {
    $username $_SESSION['username'];
    echo 
    "أهلا بك يا $username";

    ولا تنس ان تحذف المتغير $_SESSION['username'] في صفحة تسجيل الخروج بالشكل التالي:

    كود PHP:
    unset($_SESSION['username']); 
    ملاحظه: كتبت الاكواد على عجل وقد يكون هناك بعض الأخطاء الاملائية :shy:





    __________________
    بوجبر

    http://www.ba7reny.com
    بحريني دوت كوم (موقع صديق)

  6. #6
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    111


    هذا كود ملف الدخول Login

    ياليت احد يشيك عليه


    كود:
    $password = $_POST[password];
    $username = $_POST[username]; 
    $username = strtolower($username);
    
    
    session_start(); 
    $check = mysql_query("SELECT username FROM users WHERE username = '$username'");
    if(mysql_num_rows($check) == 0)  {$error[] = '&Icirc;&Oslash;&Atilde; &Yacute;&iacute; &Ecirc;&Oacute;&Igrave;&iacute;&aacute; &Ccedil;&aacute;&Iuml;&Icirc;&aelig;&aacute;'; };
     
    if (!$error){
      $check = mysql_query("SELECT password FROM users WHERE username = '$username'");
    	$row = mysql_fetch_row($check);
    	if ($password != $row[0]) {$error[] = '&Icirc;&Oslash;&Atilde; &Yacute;&iacute; &Ecirc;&Oacute;&Igrave;&iacute;&aacute; &Ccedil;&aacute;&Iuml;&Icirc;&aelig;&aacute;'; };
    } 
    
    if (!$error){
    
    $check = mysql_query("SELECT name, firstname, active FROM users WHERE username = '$username'");
    $row = mysql_fetch_row($check); 
    
    $_SESSION['name'] = $row[0];
    $_SESSION['firstname'] = $row[1]; 
    $_SESSION['active'] = $row[2];
    $_SESSION['username'] = $username;
    
    
    }
    if ($error){
    session_destroy();
    include "loginerror2.php";
    die;
    exit;
    break;
    }









  7. السلام عليكم

    اخي لم اتمعن في الكود جيدا لأني لازم اطلع من البيت و لكن و جدت الخطأ لديك و هو كالتالي

    في الكود يوجد

    كود PHP:
    $password $_POST[password];
    $username $_POST[username]; 
    لازم تكون

    كود PHP:
    $password $_POST['password'];
    $username $_POST['username']; 
    علامات التنصيح مفقودة





    __________________
    سبحان الله و بحمده .... سبحان الله العظيم

    للمراسلة

  8. #8
    عضو نشيط
    تاريخ التسجيل
    Nov 2005
    المشاركات
    73


    وأضيف نقطة بعد ...

    أن أمر بداية السيشن لازم يكون أول سطر ...

    كود PHP:
    <?
    session_start
    ();


    // هنا الأكواد اللي تبي ...

    ?>
    وياليت تحط سطر الخطأ عشان نشوف وش هو بالضبط ...!! :con2:



    عالعموم جرب هذا الكود وإن شاء الله أنه بيضبط معك ... لأنك حاط استعلامات كثيرة على غير فايدة ..

    كود PHP:
    <?
    session_start
    (); 
    $password $_POST['password'];
    $username $_POST['username']; 
    $username strtolower($username);


    $check mysql_query("SELECT * FROM users WHERE username = '$username' and password='$password'");
    if(
    $check)  {

    echo 
    "تم تسجيل الدخول بنجاح";

    session_register("JALSAH"); // طبعاً JALSAH هو اسم الجلسة هذي .. يعني اسم السيشن

    $row mysql_fetch_row($check); 

    $_SESSION['name'] = $row[0];
    $_SESSION['firstname'] = $row[1]; 
    $_SESSION['active'] = $row[2];
    $_SESSION['username'] = $username;


    }else{
    echo 
    "عفواً .. نرجو التأكد من صحة إسم المستخدم أو كلمة المرور";
    echo 
    "<a href='loginerror2.php'>إضغط هنا إذا لم يتم نقلك تلقائياً</a>";
    echo 
    "<META HTTP-EQUIV='Refresh' Content='2;URL=loginerror2.php'>";
    }

    ?>
    وعلى فكرة ترا مايحتاج session_destroy(); لأنه إذا كان الإسم خطأ أو كلمة المرور خطأ .. لن يتم تسجيل الجلسة ... هذي الدالة تحطها في ملف تسجيل الخروج ...
    وأفضّل أنك تستخدم session_unregister("JALSAH"); قبل ماتستخدم الدالة الأولى ...

    وتراني ماتأكدت من الكود بشكل صحيح لأني ماجربته على طول كتبته .. بس إن شاء الله أن مافيه أخطاء ... وللعلم تراني استخدم متغيراتك ... عشان كذا حاول تستبدل الكود اللي عندك بهذا الكود وتجرب ....

    دعواتك يا اخوي .....






  9. #9
    عضو نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    111


    مشكورين الله يجزاكم الجنه

    بجرب الاكواد الان










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض