• 0
Bavarian85

مشكلة في كود صفحة Login ؟ أرجو المساعدة ...

سؤال

السادة المشرفين 

الزملاء الأكارم

تحية طيبة ....

 

حدثت لدي مشكلة غير متوقعة عند رفع سكربت علامات الطلاب وهي كالتالي :

على السيرفر المحلي Localhost : كل الملفات والسكربت يعمل بشكل ممتاز.

المشكلة حدثت عند رفع السكربت على استضافة مدفوعة حدث التالي :

- عند إدخال اسم المستخدم وكلمة المرور لا يتم التحويل إلى الصفحة المطلوبة ..

 

أرفق لكم كود ملف الـ Login  :

<?php	session_start();	//==================================================	// استدعاء بيانات ملف اعداد الاتصال بقاعدة البيانات	include("admin/config.php");	//==================================================	// استدعاء ملف البيانات العامه	include("admin/setting.php");	include("Check.php");	echo $stylescript;	echo $stylebody;	//==================================================	// اسم الصفحه	$titlepage = "$schoolsname - صفحة الدخول";	//==================================================	if ($action == 'trylogin')	{		if(($user_name_insert == "") OR ($user_password_insert == ""))		{			$result = mysql_query("SELECT template_content FROM school_template where template_name = '".ErrorInsertUserNameAndPassword."'");			$result_info = mysql_fetch_array($result);					$ErrorInsertUserNameAndPassword = $result_info["template_content"];			$ErrorInsertUserNameAndPassword = str_replace("\"","'",$ErrorInsertUserNameAndPassword);			eval("\$ErrorInsertUserNameAndPassword = \"$ErrorInsertUserNameAndPassword\";");				echo $ErrorInsertUserNameAndPassword;			exit;		}				$result = mysql_query("SELECT * FROM school_user where user_name = '$user_name_insert'");		$result_num = mysql_num_rows($result);				if ($result_num == 0)		{			// طباعة رساله خطأ بعدم صحة الاسم المدخل			$result = mysql_query("SELECT template_content FROM school_template where template_name = '".ErrorWrongUserNameInsert."'");			$result_info = mysql_fetch_array($result);					$ErrorWrongUserNameInsert = $result_info["template_content"];			$ErrorWrongUserNameInsert = str_replace("\"","'",$ErrorWrongUserNameInsert);			eval("\$ErrorWrongUserNameInsert = \"$ErrorWrongUserNameInsert\";");				echo $ErrorWrongUserNameInsert;			exit;		}		else		{			$result_info = mysql_fetch_array($result);			$user_password = $result_info['user_password'];			$user_password2 = $result_info['user_password2'];			$user_group_id = $result_info['user_group_id'];			$user_user_id = $result_info['user_user_id'];									// التاكد من صحة الرقم السري المدخل			if(($user_password_insert <> $user_password)			 and			 ($user_password_insert <> $user_password2))			{				$result = mysql_query("SELECT template_content FROM school_template where template_name = '".ErrorWrongUserPasswordInsert."'");				$result_info = mysql_fetch_array($result);						$ErrorWrongUserPasswordInsert = $result_info["template_content"];				$ErrorWrongUserPasswordInsert = str_replace("\"","'",$ErrorWrongUserPasswordInsert);				eval("\$ErrorWrongUserPasswordInsert = \"$ErrorWrongUserPasswordInsert\";");					echo $ErrorWrongUserPasswordInsert;				exit;			}			else			{				$new_value_lasttime = time();				// اذا كان الرقم السري يخص المدير				if($user_group_id == 1)				{					// استخراج بيانات المدير 					$result = mysql_query("SELECT * FROM school_employee where employee_id = $user_user_id");					$result_info = mysql_fetch_array($result);					$user_full_name = $result_info['employee_full_name'];					$user_login_lasttime = $result_info['employee_login_lasttime'];					// استدعاء صيغة وقت اخر زياره النصيه					include("user_login_lasttime_text.php");					$date_to_convert = $user_login_lasttime;					$sho_time=1;					//include("hejri.php");					$user_login_lasttime = $date_result;					// عمل تحديث لوقت اخر زياره للمدير						$result = mysql_query("UPDATE school_employee SET employee_login_lasttime = '$new_value_lasttime',employee_count_login = employee_count_login+1 WHERE employee_id = $user_user_id");				}				// اذا كان الرقم السري يخص المدرسين				if($user_group_id == 3)				{					$result = mysql_query("SELECT * FROM school_employee where employee_id = $user_user_id");					$result_info = mysql_fetch_array($result);					$user_full_name = $result_info['employee_full_name'];					$user_login_lasttime = $result_info['employee_login_lasttime'];					// استدعاء صيغة وقت اخر زياره النصيه					include("user_login_lasttime_text.php");					$date_to_convert = $user_login_lasttime;					$sho_time=1;					//include("hejri.php");					$user_login_lasttime = $date_result;					// عمل تحديث لوقت اخر زياره للمدرس						$result = mysql_query("UPDATE school_employee SET employee_login_lasttime = '$new_value_lasttime',employee_count_login = employee_count_login+1 WHERE employee_id = $user_user_id");				}				// اذا كان الرقم السري يخص الطالب او ولي امره				if($user_group_id == 4)				{					if($HTTP_SESSION_VARS['S_pas_login'] == 1){$welcomepas ="ولي امر : ";}					// استخراج بيانات الطالب					$result = mysql_query("SELECT * FROM school_student where student_id = $user_user_id");					$result_info = mysql_fetch_array($result);					$user_full_name = $welcomepas.''.$result_info['student_full_name'];					$user_login_lasttime = $result_info['student_login_lasttime'];					// استدعاء صيغة وقت اخر زياره النصيه					include("user_login_lasttime_text.php");					$date_to_convert = $user_login_lasttime;					$sho_time=1;					//include("hejri.php");					$user_login_lasttime = $date_result;					// معرفه من قام بالدخول .. الطالب او ولي امره					if($user_password_insert == $user_password2)					{												$S_pas_login = 1;						$S_student_login = 0;						session_register("S_pas_login");						session_register("S_student_login");						// عمل تحديث لوقت اخر زياره لولي امر الطالب							$result = mysql_query("UPDATE school_student SET student_login_pas_lasttime = '$new_value_lasttime',student_pas_login_count = student_pas_login_count+1 WHERE student_id = $user_user_id");					}					elseif($user_password_insert == $user_password)					{												$S_pas_login = 0;						$S_student_login = 1;						session_register("S_pas_login");						session_register("S_student_login");						// عمل تحديث لوقت اخر زياره للطالب						$result = mysql_query("UPDATE school_student SET student_login_lasttime = '$new_value_lasttime',student_login_count = student_login_count+1 WHERE student_id = $user_user_id");					}				}														$S_user_user_id = $user_user_id;				session_register("S_user_user_id");				$S_user_group_id = $user_group_id;				session_register("S_user_group_id");				$S_user_full_name = $user_full_name;				session_register("S_user_full_name");				$S_user_login_lasttime = $user_login_lasttime;				session_register("S_user_login_lasttime");				$S_user_login_lasttime_text = $user_login_lasttime_text;				session_register("S_user_login_lasttime_text");								echo "<p dir='rtl'>تم قبول بياناتك ... فضلا انتظر ثواني للدخول الى الموقع</p>";				exit("<META HTTP-EQUIV='refresh' CONTENT='2 URL=index.php'>");			}		}	}			//==================================================				//################################################## 	// طباعة صفحة الدخول للموقع 	$result = mysql_query("SELECT template_content FROM school_template where template_name = '".login."'");	$result_info = mysql_fetch_array($result);			$login = $result_info["template_content"];	$login = str_replace("\"","'",$login);	eval("\$login = \"$login\";");		echo $login;	//################################################## ?>

أرجو المساعدة ولكم جزيل الشكر والتقدير ...

 

 

-1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

20 إجابة على هذا السؤال .

  • 0

يا جماعة الخير ...

 

أكثر من 50 مشاهدة ولا يوجد رد حتى الآن ..

 

:(

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

هل يعقل أنه لا يوجد أحد قادر على المساعدة ..

أرجوكم أخوتي أنا بأمس الحاجة لمساعدتكم...

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

انت تواجه مشكلة الوجيه ,

وكود التوجيه صحيح اخي الفاضل ،

echo "<p dir='rtl'>تم قبول بياناتك ... فضلا انتظر ثواني للدخول الى الموقع</p>";                exit("<META HTTP-EQUIV='refresh' CONTENT='2 URL=index.php'>");

لذلك تقنيا مشاكل الدخول يجب التأكد اولا من صحة الاتصال بقاعدة البيانات ,

على الاقل يجب ان تتلقى رسالة تفيدك بقبول بياناتك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي العزيز ...

شكراً جزيلاً على الرد .

 

أرفق لك كود ملف الاتصال بقاعدة البيانات ..

<?php	// ==================================================//	//	//	//	// ==================================================//	// -----------------------------------	// نوع قاعدة البيانات .. فقط مايسكل هوالمدعوم حاليا	// database's type (only mysql is supported at the moment)	$dbservertype='mysql';	// -----------------------------------	// اسم مضيف او رقم اي بي السيرفر	// server's hostname or ip	$servername='localhost';	// -----------------------------------	// الاسم والباسوورد للدخول الى مضيف قاعدة البيانات	// username and password to log onto db server	$dbusername='';	$dbpassword='';	// -----------------------------------	// اسم قاعدة البيانات	// database's name 	$dbname='MySchool';	// -----------------------------------	// بريد المدير الادمن	// admin's email	$technicalemail='';	// -----------------------------------	// الدخول الى خادم قاعدة البيانات	// log onto db server	$db = mysql_pconnect($servername,$dbusername,$dbpassword) 			 or 		 die("لايمكن الاتصال بخادم قاعدة البيانات"); 			// -----------------------------------	// الدخول الى قاعدة بيانات المخصصه للمنتدى	// selected board's database	mysql_select_db($dbname)	or 	die("لايمكن تحديد قاعدة بيانات المنتدى");	// -----------------------------------?>

أرجو الإطلاع والمساعدة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أستاذي العزيز هل لهذه المعلومات علاقة بالمشكلة :

 

هذه  معلومات سيرفر الاستضافة:

Apache version: 2.2.15

PHP version: 5.3.24

MySQL version: 5.6.13

Operating System Linux Kernel Version 3.2.40

Architecture i686 Theme x3

 

هذه معلومات السيرفر المحلي على حاسوبي :   The AppServ Open Project - 2.5.10 for Windows

تم تعديل بواسطه Bavarian85
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
// الاسم والباسوورد للدخول الى مضيف قاعدة البيانات    // username and password to log onto db server    $dbusername='';    $dbpassword='';

هل انت متأكد انك تضع اليوزرنيم والباسوورد بشكل صحيح , اذا نعم , ما هي الرسالة التي تظهر لك عند تسجيل الدخول للنظام , ادا لم تشاهد رسالة , استعرض مصدر ( عرض الصفحة ) و شاهد الخطأ , اخبرنا عنه

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

نعم أستاذ حمدان .. أنا أضع كل شيء بشكل صحيح 

المشكلة أنه لا توجد رسالة خطأ أبداً ولا يتم التحويل أبداً

عند الضغط على زر الدخول يقوم بمسح البيانات المدخلة في اسم المستخدم وكلمة المرور فقط 

وهذا كود الصفحة كما طلبت :

    	<style type='text/css'>		BODY 		{			SCROLLBAR-BASE-COLOR: #C0C0C0;			SCROLLBAR-ARROW-COLOR: #C0C0C0;			font-family: Tahoma; 			font-size: 10pt;		}		// الوصله -->		A 		{			text-decoration: none;			font-family: Tahoma; 		}	</style>				   	<BODY bgColor='#C0C0C0' text='black' vLink='black' aLink='black' link='black'>	<html dir='rtl'><head><meta name='GENERATOR' content='Microsoft FrontPage 5.0'><meta name='ProgId' content='FrontPage.Editor.Document'><meta http-equiv='Content-Type' content='text/html; charset=windows-1256'><TITLE>مـعـهد الـمـعـلا الـتـخـصـصـي - صفحة الدخول</TITLE></head><br><br><form method='POST' action='login.php?action=trylogin'><table dir='ltr' align='center' border='2' cellpadding='1.5' cellspacing='1.5' style='border-collapse: collapse' bordercolor='white' width='50%' id='AutoNumber1'>    <tr>    <td width='50%' align='right'>    	<p><font face='Tahoma'>   Username    </font></p>    </td>    <td width='50%'>     	<p><input type='text' name='user_name_insert' size='20'></p>      </td>  </tr>    <tr>    <td width='50%' align='right'>    	<p><font face='Tahoma'>  Password  </font></p>    </td>    <td width='50%'><font face='Tahoma'>    	<p><input type='password' name='user_password_insert' size='20'></p>    </td>  </tr>    <tr>    <td width='100%' colspan='2'>    	<p align='center'><br>	<input type='submit' value='       Login         ' name='B1' style='font-family: Tahoma'>    </td>  </tr>  </table></form><br><br>
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

نعم أستاذ حمدان .. أنا أضع كل شيء بشكل صحيح 

المشكلة أنه لا توجد رسالة خطأ أبداً ولا يتم التحويل أبداً

عند الضغط على زر الدخول يقوم بمسح البيانات المدخلة في اسم المستخدم وكلمة المرور فقط 

وهذا كود الصفحة كما طلبت :

    	<style type='text/css'>		BODY 		{			SCROLLBAR-BASE-COLOR: #C0C0C0;			SCROLLBAR-ARROW-COLOR: #C0C0C0;			font-family: Tahoma; 			font-size: 10pt;		}		// الوصله -->		A 		{			text-decoration: none;			font-family: Tahoma; 		}	</style>				   	<BODY bgColor='#C0C0C0' text='black' vLink='black' aLink='black' link='black'>	<html dir='rtl'><head><meta name='GENERATOR' content='Microsoft FrontPage 5.0'><meta name='ProgId' content='FrontPage.Editor.Document'><meta http-equiv='Content-Type' content='text/html; charset=windows-1256'><TITLE>مـعـهد الـمـعـلا الـتـخـصـصـي - صفحة الدخول</TITLE></head><br><br><form method='POST' action='login.php?action=trylogin'><table dir='ltr' align='center' border='2' cellpadding='1.5' cellspacing='1.5' style='border-collapse: collapse' bordercolor='white' width='50%' id='AutoNumber1'>    <tr>    <td width='50%' align='right'>    	<p><font face='Tahoma'>   Username    </font></p>    </td>    <td width='50%'>     	<p><input type='text' name='user_name_insert' size='20'></p>      </td>  </tr>    <tr>    <td width='50%' align='right'>    	<p><font face='Tahoma'>  Password  </font></p>    </td>    <td width='50%'><font face='Tahoma'>    	<p><input type='password' name='user_password_insert' size='20'></p>    </td>  </tr>    <tr>    <td width='100%' colspan='2'>    	<p align='center'><br>	<input type='submit' value='       Login         ' name='B1' style='font-family: Tahoma'>    </td>  </tr>  </table></form><br><br>
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

نريد التأكد ان البيانات وصلت لمرحلة التحقق فعلا ً
فوق الاسطر التالية :

echo "<p dir='rtl'>تم قبول بياناتك ... فضلا انتظر ثواني للدخول الى الموقع</p>";                exit("<META HTTP-EQUIV='refresh' CONTENT='2 URL=index.php'>");

ضع التالي

die("WE ARE HERE");

بمجرد الدخول , اذا تم عرض الرسالة WE ARE HERE ستكون خطوة جيدة , والا سنحاول ان نعرف اين يقف الكود بالتحديد , بنفس الطريقة , مبدئيا دعنا نحاول خطوة بخطوة,
فعليا مشكلة كهذه ستكون بسيطة جدا , ولكننا سنتعلم معاً طريقة من طرق الـ Debugging

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي العزيز ..

 

لاجديد يذكر , قمت بوضع الكود ولكن للأسف لم يظهر شيء نهائياً.

 

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جرب ضع السطر نفسه قبل كل سطر حتى تكتشف اين يقف الكود عندها سنحاول حل المشكلة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي العزيز الكود يقف عند هذا السطر :

if ($action == 'trylogin')
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

إذا قبل السطر المشار اليه ,

ممكن تغير die الى

die("Action value:" . $action );

المفترض يطبع Action value: trylogin

تم تعديل بواسطه Hamdan Taima
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

صديقي العزيز ..

 

قمت بكتابة هذا السطر قبل سطر : if ($action == 'trylogin')

 

تم طباعة  : Action value  فقط لاغير

 

قمت بكتابة هذا السطر بعد if ($action == 'trylogin')

 

 تم طباعة  : لم تقم بإدخال بيانات المعرف أو/و الرقم السري

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

المشكلة بإذن الله بسيطة لكن دعنا نتأكد من التالي جرب وضع هذا الكود

if ($action == 'trylogin')	{		die("action: $action  , Name: $user_name_insert  , Pass: $user_password_insert ");

قم بتسجيل الدخول بشكل عادي , جرب مرة اخرى ايضا ً ,
من المفترض ان يتم طباعة اسم الدخول وكلمة المرور و trylogin  بشكل عادي , ادا لا يتم طباعتهم ستبدوا الامور اسهل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

صديقي العزيز ..

 

لم تتم طباعة أي شيء على الشاشة حتى حقول اسم المستخدم وكلمة المرور لمم يتم عرضها فقط شاشة بيضاء فارغة .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

صديقي حمدان ..

أعتذر عن هذا الخطأ تم عرض صناديق الإدخال ولكن نفس المشكلة لا يتم طباعة أي شيء مما سبق.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جرب التالي ونشوف النتيجة ان شاء الله

die($_POST['user_name_insert'];

المفترض يطبع اسم الدخول الي قمت بادخاله فقط

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

صديقي العزيز .. شكراً لجهودك

 

ولكن للأسف لم أحصل على شيء فقط صفحة بيضاء فارغة 

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

كما قلنا قبل الحل بسيط وهو كالتالي :

if ($_GET[action] == 'trylogin')    {        $user_name_insert=$_POST[user_name_insert];        $user_password_insert=$_POST[user_password_insert];

مع ملاحظة وجود مشكلة في ترميز الصفحة @

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .