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

بعض الاسئلة المهمة في البرمجة

بدأه reema_1988 في 11 يناير 2011 · 16 رد · 1,411 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخواني الكرام

الرجاء المساعدة اذا تكرمتم في اجابة الاسئلة التالية :

1- ما هو sql injection? وهل هو مشكلة أم حل؟ واذا كان مشكلة كيف يتم حلها؟

2- ما الفرق ما بين الكوكيز والسيشين ؟ومن الافضل بينهم ولماذا؟

3- ما هو MVC ؟ MODULE VIEW CONTROLLER؟ يا ريت تشرحوه وتشرحو كل جزء من الثلاثة اجزاء شو هي وظيفته؟؟

4- ما هو الاختلاف الذي حصل عند اصدار نسخة PHP 5.0؟ ما الفرق ما بينها وبين اصدار PHP 4.0؟؟

5- ما الفرق ما بين INCLUDE AND REQUIER؟

6- ما الفرق ما بين INCLUDE AND INCLUDE_ONCE والفرق ما بين REQUIER AND REQUIER_ONCE؟؟؟

وشكرا لكم على المساعدة مسبقاً .

#2

كل ماسئلته موجود بالعربية و الإنجليزية، جرب البحث قليلا حتى ترسخ لك المعلومة ثم إسئل كان لديك إحتيار أو إستعسار في فهم شيء ما.

''‏اللهم إني أسالك إيمانا دائما وأسألك قلبا خاشعا وأسألك علما ‏نافعا وأسألك يقينا صادقا وأسألك دينا قيما وأسألك العافية من كل ‏بلية''

'‏اللهم أغفر للمؤمنين و المؤمنات و المسلمين و المسلمات الأحياء ‏منهم و الأموات'

www.it-scoop.com

#3

بالنسبة للسؤال الأول: ما معنى SQL injection؟

وبالنسبة لباقي الأسئلة أتفق مع سيف في إجابته.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#4
اقتباس

2- ما الفرق ما بين الكوكيز والسيشين ؟ومن الافضل بينهم ولماذا؟

3- ما هو MVC ؟ MODULE VIEW CONTROLLER؟ يا ريت تشرحوه وتشرحو كل جزء من الثلاثة اجزاء شو هي وظيفته؟؟

4- ما هو الاختلاف الذي حصل عند اصدار نسخة PHP 5.0؟ ما الفرق ما بينها وبين اصدار PHP 4.0؟؟

5- ما الفرق ما بين INCLUDE AND REQUIER؟

6- ما الفرق ما بين INCLUDE AND INCLUDE_ONCE والفرق ما بين REQUIER AND REQUIER_ONCE؟؟؟

إضافات سريعة:

2- الكوكيز تخزن في طرف الزبون client side، بالتالي بياناتها مكشوفة ويمكن التعديل عليها أو حذفها.. إلخ، بخلاف الـ Session الذي يخزن في طرف السيرفر server side، وبياناتها وقيمها لا تكون مكشوفة والأفضل ألا يعلم أحد ما القيم التي يتم تخزينها فعلياً أو حتى أسماء المتحولات، لنواحي أمنية.

الكوكيز تحتاج إلى جافاسكربت، بالتالي في المتصفحات التي تمنعها أو تفرض قيوداً عليها لن يكون بالإمكان استخدامها.

الـ Session بما أنه يعمل ضمن جهة السيرفر فلا يحتاج شيئاً من متصفح المستخدم :) فهذه ميزة للـ Session.

يعتقد العديد من الناس اعتقاد خاطئ وهو أن استخدام الـ Sessions عملية صعبة للمبرمج/المطور، وهذا اعتقاد خاطئ فمن السهل استخدامها واستثمارها بطريقة فعالة.

4- عليك بمراجعة الـ change log بين الإصدارين، وهذا متوفر على الموقع الرسمي.

http://php.net/ChangeLog-5.php

http://php.net/ChangeLog-4.php

5+6-

يمكن تلخيص الإجابة بالتالي:

- include ستظهر لك تحذيراً في حال كون الملف المراد تضمينه غير موجود ويتابع التنفيذ بما تيسّر tongue.gif بينما require لا تفعل ذلك بل تقوم بإيقاف تنفيذ باقي النص البرمجي تماماً وتنتهي الصفحة بخطأ قاتل، هذا مهم إن كانت باقي أجزاء الصفحة تعتمد بشكل أساسي على الملف المراد تضمينه ولا يمكن أن تعمل بشكل صحيح بدونه (قيم ابتدائية مهمّة مثلاً؟)

- include_once و require_once لها ذات الاستخدام كما شرحت في الأعلى

الاختلاف الوحيد

هو أنها تضمن أن الملف المراد تضمينه لم يتم تضمينه من قبل ضمن مجال التنفيذ ذاته، وبذلك تتفادى تكرار بيانات وتصاريح عن توابع أو تهيئتها بقيم افتراضية من جديد مما سيؤدي إلى نتائج خاطئة.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#5

الميزة التي يمتاز بها الكوكيز عن السيشن هي ان الكوكيز يظل في جهاز المستخدم يخلاف السيشن الذي تنتهي صلاحيته عند اغلاق المتصفح

فمثلا لو كان عندنا موقع متعدد اللغات فعندما يدخل الزائر اول مرة سيختار لغته المفضلة عندها نقوم بحفظ اللغة التي اختارها المستخدم في كوكيز

حتى يتمكن من الدخول مباشرة بلغته المفضلة في المرات القادمة

( مثل هذه العملية لا يمكن عملها بالسيشن )

1
#6
milan07 كتب:

بخلاف السيشن الذي تنتهي صلاحيته عند اغلاق المتصفح

أتفق معك في أن الكوكيز يمكن استخدامها لتخزين معلومات غير حساسة طويلة الأمد دون قلق.

لكني أختلف معك في الاقتباس المذكور في الأعلى

فالـ session يمكن التحكم بعمر صلاحيته بسهولة وذلك بالشكل التالي (مثال برمجي):

<?php
session_start();

// set timeout period in seconds
$inactive = 50;

// check to see if $_SESSION['timeout'] is set
if(isset($_SESSION['timeout']) ) {
	$session_life = time() - $_SESSION['timeout'];
	if($session_life > $inactive)
    {
		session_destroy();
		header("Location: logoutpage.php");
	}
	echo $session_life;
} else {
	$_SESSION['timeout'] = time();
}
?>

الكود يقوم بالتحقق من الـ *inactivity* فإن تجاوزت حداً معيناً تم تسجيل خروج العضو.

إغلاق المتصفح في هذه الحالة لن يقوم بتدمير بيانات الـسيشن وخذ أقرب مثال إليك، الفريق العربي للبرمجة.

أغلق المتصفح وأعد فتح الموقع من جديد، هل تم تسجيل خروجك؟ لا.

هل يستخدم المنتدى الكوكيز لتخزين بيانات تسجيل دخولك؟ لا.

تحياتي.

تم تعديل هذه المشاركة بواسطة Xacker في 14 يناير 2011 في 22:11 — السبب: اعتقاد خاطئ

1

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#7

إن لم تخني معلوماتي فإن session تستعمل الكوكيز أيضا.

''‏اللهم إني أسالك إيمانا دائما وأسألك قلبا خاشعا وأسألك علما ‏نافعا وأسألك يقينا صادقا وأسألك دينا قيما وأسألك العافية من كل ‏بلية''

'‏اللهم أغفر للمؤمنين و المؤمنات و المسلمين و المسلمات الأحياء ‏منهم و الأموات'

www.it-scoop.com

#8
SIFE كتب:

إن لم تخني معلوماتي فإن session تستعمل الكوكيز أيضا.

هل من مصدر أخي سيف؟

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#9
Xacker كتب:

هل من مصدر أخي سيف؟

اقتباس
session_start() creates a session or resumes the current one based on a session identifier passed via a GET or POST request, or passed via a cookie.

http://be2.php.net/manual/en/function.session-start.php

-------------------------------

بالنسبة للكود الذي وضعت، ممكن أحتاجه :wub:

ما الفائدة من $_SESSION['timeout'] ، يبدو لي أنه ممكن الإستغناء عنها

تم تعديل هذه المشاركة بواسطة herch في 14 يناير 2011 في 21:54

#10

قمت بمراجعة معلوماتي، اعتقادي كان خاطئاً.. نعم يمكن التحكم بالـ inactivity للسيشن لكن بمجرد إغلاق المتصفح ستضيع كل البيانات فالمتصفح ليس له ذاكرة، والطريقة الوحيدة للاحتفاظ بالمعلومات ستكون من خلال الـ persistent cookies التقليدية.

عذراً من الجميع إن كانت مشاركتي تسببت بالتباس ما.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#11

لو كان هناك طريقة للإحتفاظ بال PHPSESSID للمستخدم، وتمديد ال session timeout، ربما يمكن تذكر المستخدم بدون الإعتماد على ال cookies

مثلا نعطي للمستخدم رابطا للدخول للموقع، ونضيف له PHPSESSID unsure.gifph34r.gif

#12

لكن لو تم اغلاق المتصفح فلا يوجد أي طريقة سوى الكوكيز للتعرف عليه من جديد إن أردت استخدام الـ session id معه.

لا يمكنك في هذه الحالة أن تقوم بتسجيل الـ user ID فقط في الكوكيز وتعتمد عليها في إعادة منحه الـ session طبعاً لأن الفكرة فاشلة أمنياً :lol:

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#13

يسلمو كتير جميعا

كلكم زوء , ما قصرتو

باقي الفرع الثالث ما حدا جاوب عليه؟؟؟

يا ريت تساعدوني وتفهموني اكتر عن الـــ design pattern ايش هو ؟وليش بيستخدم وشو الهدف منه؟

وعندي اسئلة جديدة ,

1- ما هو الـــ jason ؟؟؟؟

2-ما هو الــ xss؟؟

3- ما هو الـــ ssl وكيف بيستخدم ببرمجة المواقع؟؟

4- ما هو احسن framwork للغة الــphp ومع اي سيرفر بيستخدم؟؟؟

5- عندي موقعين وكل موقع على سيرفر ,كيف ممكن اربط ما بين هدول الموقعين من خلال السيشين او الكوكيز؟؟؟؟؟؟؟

6- ما هم الـــ expention and try and threw???

وشكرا لكم مسبقا

تم تعديل هذه المشاركة بواسطة reema_1988 في 30 يناير 2011 في 18:10

#14

شووو ما في حدا بدو يساعد؟؟

#15

مش عارفة والله ليش ما حدا بده يساعد؟ وين الصعوبة في هاي الاسئلة؟

الكل رح يستفيد من هاي الاسئلة

يا ريت تساعدوني

#16

الرجاء المساعدة

لا زالت الاسئلة قائمة

اتمنى حد يجاوب عليها؟؟

ما بعرف بهاد المنتدى بحسكم ما بتآمنو بالـ OOP

ما بلاقيكم بتحكو عنها او بتسألو عنها مع انها اهم شي

ما زالتم على النظام القديم ( الشعبي)

وبحسكم غير مكترثين بمنتدى PHP ومهتمين أكثر بالدوت نت , مع انه بأمريكا نفسها واوروبا وجميع الدول الغربية اغلبها بتستعمل PHP AND JAVA AND PAYTHON اكتر من منتجات المايكروسوفت

حسستوني انه ما في غير شركة مايكروسوفت بالعالم وانه شركة مايكروسوفت مسيطرة عليكم كلياً :blink: :ohmy: :wacko:

#17
reema_1988 كتب:

حسستوني انه ما في غير شركة مايكروسوفت بالعالم وانه شركة مايكروسوفت مسيطرة عليكم كلياً :blink: :ohmy: :wacko:

الـOOP تعتبر نسبيا جديدة في PHP وانا استعملها وأجدها مفيدة في المواقع الكبيرة والمعقدة، killerphp.com/tutorials/object-oriented-php

اذا كنت تعرف الـ XML على انها طريقة لعرض وتقديم بيانات، فـ JSON هي طريقة أخرى لنفس الغرض وهو مفيد خصوصا في تبادل بيانات بين PHP و Javascript على سبيل المثال.

XSS هي طريقة للهجوم على صفحة ويب وأكواد HTML كما ذكر أن SQL Injection تستهدف قاعدة البيانات

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