الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل user و pass لصفحة

مغلق
بدأه mahi910 في 7 مايو 2007 · 9 رد · 1,431 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا جماعة محتاج مساعدتكم ضروري عندي صفحة وعايز اعملها يوزر نايم وباسورد

محتاج الموضوع بالتفصيل لاني ليس على دراية بالموضوع

#2

للتحقق من هوية المستخدم:

إن كان هذا الدخول الأول للمستخدم إلى هذه الصفحة (أي لا توجد قيمة لمتحول _POST['name'] مثلاً) يجب أن نظهر له فورم فيه حقلين text لإدخال الاسم وكلمة السر

بعد أن يرسل المستخدم الفورم (يصبح لدينا قيمة للمتحول _POST['name'] ) يتم التأكد إن كانت القيم المرسلة مطابقة للقيم التي لدينا لاسم المستخدم وكلمة السر والذين يمكن أن يكونا موجودين في متحولين مثلاُ أو مخزنين في جدول في قاعدة البيانات

فإن كانت القيم متطابقة نظهر للمستخدم المحتوى الذي نرغب به(رسالة ترحيب مثلاً)

وإلا نظهر له رسالة خطأ تطلب إعادة إدخال البيانات مع إظهار الفورم السابق نفسه...

إرجو أن الموضوع قد أصبح واضحاً بالنسبة لك

وتجدر الإشارة أننا إن أردنا تذكر المستخدم أثناء تنقله بين الصفحات فيجب عندئذ استعمال cookie أو session

اقتباس
You live it or lie it
so DO IT ,DO IT right ,and DO IT right now...
#3

أخي العزيز شكراً على ردك

بس أنا مش عارف أعملها ازاى لكن الفكرة انا فهمها

انا عايز حد يقولي هعمل ايه

#4

اقرأ هذا المثال وجربه:

<?
	//بدء الجلسة	
	session_start();
	print "<html dir=\"rtl\">";
	//اسم المستخدم وكلمة السر والذين يمكن أن يكونا في قاعدة البيانات 
	$savedUserName='XX0111XX';
	$savedPswrd='arabteam2000';

	//إذا كان لدينا طلب تسجيل دخول 	
	if(isset($_POST['signIn'])){
		//نقارن بين القيم المرسلة والقيم المحفوظة لدينا
		if(($_POST['userName']==$savedUserName)&&($_POST['pswrd']==$savedPswrd)){
			//في حال التساوي نسجل اسم المستخدم كمتحول جلسة أو مثلاً إذا كان لدينا رقم للمستخدم فنستخدمه كمتحول جلسة بدل الاسم		
			$_SESSION['userName']=$_POST['userName'];
		}
		else 
			//طباعة رسالة خطأ عند عدم التطابق
			print "<font color=red>اسم مستخدم أو كلمة سر خاطئة</font>";
	}
	//إذا تم تسجيل متحول الجلسة أي تم تسجيل الدخول بنجاح نظهر رسالة ترحيب
	if(isset($_SESSION["userName"])){
		print "أهلاً بك يا $_SESSION[userName]";	
	}
	//إذا لم يتم تسجيل الدخول نظهر الفورم للمستخدم ليسجل الدخول
	if(!isset($_SESSION["userName"])){
		print "<table border=0><center><form action=\"auth.php\" method=\"post\">";
		print "<tr><td>البريد الإلكتروني</td><td><input type=text size=20 name=userName>";
		print "<tr><td>كلمة المرور</td><td><input type=password size=20 name=pswrd>";
		print "<tr align=center><td colspan=2><input type=submit name=\"signIn\" value=\"تسجيل دخول\">
			</center></form></table>";
	}
?>

لقد استعملنا مفهوم الـ session لتذكر المستخدم حيث يتم الاحتفاظ بمتحول الـ session طوال فترة الجلسة الواحدة (أي تنتهي بإغلاق نافذة المتصفح) وهكذا حتى لو تنقل المستخدم بين الصفحات فإنه يبقى متذكراً

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

		//نقارن بين القيم المرسلة والقيم المحفوظة لدينا
		if(($_POST['userName']==$savedUserName)&&($_POST['pswrd']==$savedPswrd)){

نقوم بالاتصال بقاعدة البيانات ثم وعلى اعتبار أن بيانات المستخدمين موجودة في جدول users نكتب:

mysql_query("select * from users where userName=$_POST[userName] AND pswrd=$_POST[pwrd]");
if($row=mysql_fetch_array($res))

اقتباس
You live it or lie it
so DO IT ,DO IT right ,and DO IT right now...
#5

اخى العزيز شكرا جدا على الرد

بس المشكلة انى مبتدىء جدا فى الموضوع ومش فاهم ال SESSION

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

علشان الاقسام هى بس اللى تدخل تشوف المحتويات

ياريت يا اخى تساعدني اكون شاكر جدااااااااااااااا

علماً بأني استخدم الدريم ويفر فى تصميم الصفحات ياريت توضحلي ازاى اربط البي اتش بي بالدريم ويفر

#6

الكود إذا لم ترد استخدام الـ session سيكون شبيه بالسابق:

<html dir="rtl">
<?

	//اسم المستخدم وكلمة السر 
	$savedUserName='XX0111XX';
	$savedPswrd='arabteam2000';
	//متحول يبين إذا ما تم تسجيل الدخول
	$signedIn=false;
	//المحتويات المراد إظهارها للمستخدم المسجل
	$content="أهلاً بك";

	//إذا كان لدينا طلب تسجيل دخول	  
	if(isset($_POST['signIn'])){
		//نقارن بين القيم المرسلة والقيم المحفوظة لدينا
		if(($_POST['userName']==$savedUserName)&&($_POST['pswrd']==$savedPswrd)){
			//في حال التساوي 		
			$signedIn=true;
		}
		else 
			//طباعة رسالة خطأ عند عدم التطابق
			print "<font color=red>اسم مستخدم أو كلمة سر خاطئة</font>";
	}
	//إذا تم تسجيل الدخول
	if($signedIn){
		print $content;	
	}
	//إذا لم يتم تسجيل الدخول نظهر الفورم للمستخدم ليسجل الدخول
	else{
		print "<table border=0><center><form action=\"auth.php\" method=\"post\">";
		print "<tr><td>البريد الإلكتروني</td><td><input type=text size=20 name=userName>";
		print "<tr><td>كلمة المرور</td><td><input type=password size=20 name=pswrd>";
		print "<tr align=center><td colspan=2><input type=submit name=\"signIn\" value=\"تسجيل دخول\">
			</center></form></table>";
	}
?>

مع ملاحظة أن المستخدم في هذه الحالة لن يتم تذكره في الصفحات الأخرى التي ينتقل إليها

على فكرة أنا لم أعرف تماماً ماذا تريد ... فإذا كنت تريد معلومات عن طريقة استخدام الـ session فأخبرنا...والسلام

اقتباس
You live it or lie it
so DO IT ,DO IT right ,and DO IT right now...
#7

مشكور اخي جدا على الرد والمتابعة المستمرة

بس المشكلة يا اخي انى مبتداء جدااااااااااااااااااااااااااااااااا فى الموضوع ويصعب على امثالي أنهم يفهموا اللى انت بتقوله

ياريت ياريت توضحلي الموضوع ببساطة اكتر من كده

انت بتحطيلي كود والمفروض أنى أفهم القصة ماشية ازاى

بس المشكلة أنى عايز أفهم من البداية

ياريت يا أخي ترد عليا لان الموضوع مطلوب منى فى الشغل والوقت عمال يعدي

#8

في مشاركتي الأولى حاولت أن أوضح لك كيف سيتم عمل الموضوع

اقتباس
بس أنا مش عارف أعملها ازاى لكن الفكرة انا فهمها

فقمت بكتابة الكود لكي تتعلم منه مع ملاحظات عند كل تعليمة

اقتباس
ومش فاهم ال SESSION

فوضعت لك نفس المثال دون استخدام الـ session

وحقيقي يا أخي أنا ما لا أعرف ما الذي تريدني أن أشرحه الآن... :blink: :wacko:

فيا ريت تقرأ الكود مع التعليقات الموجودة فيه وتحاول تفهمه وتجربه وتستعين بـ PHP Manual للبحث عن الأشياء التي لا تعرفها أو تسألنا ...ثم تخبرنا ماهو الشيء الغير واضح بالنسبة لك لنحاول مساعدتك

وبالتوفيق مع أخونا PHP ;)

اقتباس
You live it or lie it
so DO IT ,DO IT right ,and DO IT right now...
#9

والله انا مكسوف منك خااااااااااااالص

بس المشكلة اني مصمم مواقع انترنت ومطلوب منى بعد ما صممت موقع هيتحط على الشبكة الداخلية أنى احط يوزر نايم وباسورد على أول صفحة فى الموقع

بس هى دى القصة

انا مليش فى البرمجة خاااااااااالص

عايز حضرتك توضحلي أعمل ايه بالظبط

#10

1- ماهي قاعدة البيانات التي يجب أن نستخدمها؟؟

2- وكيف أربطها مع الـPHP؟؟

3- وكيف أجلب البيانات منها علما أن موقعي شبيه بالمنتدى وفيه أعضاء كثر؟؟

4- ولو أثقل عليكم كيف أحفظ البيانات المدخلة أثناء تسجيل عضو جديد في القاعدة؟؟

5- صحيح أتذكرت أن الاستاذ قال اننا سنستخدم MYSQL؟؟

6- كيف أضع قيود المفاتيح الأساسية عليها؟؟

النغم الخجول

14_07_06_10_56_13_1152942973_6__4__6__1_5__56_1144313576165_8_-6.jpg

هذا الموضوع مغلق.

مواضيع مشابهة