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

كيف يمكن للموقع (السيرفر) الكشف عن ip متصل به ؟

مغلق
بدأه محمد النحراوي في 24 أكتوبر 2005 · 27 رد · 2,272 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم

ربما عنوان الموضوع يوضح المطلوب

فهل هناك طريقة يمكن للموقع من خلالها أن يعرف إذا كان عنوان IP محدد متصلاً به أم لا

ليس المطلوب هو معرفة عنوان IP الزائر ، ولكن فلنفرض أن لدي أربعة زوار .. الآن و بعد ربع ساعة أريد أن أعرف هل لازال IP الزائر رقم ثلاثة وليكن مثلاً 200.10.10.200 مازل متصلاً معي من عدمه

شكرا لكم وأرجو الإفادة

تم تعديل هذه المشاركة بواسطة محمد النحراوي في 27 أكتوبر 2005 في 02:13

#3

السلام عليكم

جزاك الله خيراً

بغض النظر عن مسألة الصلاحيات التي ربما لا يوفرها المستضيف ، فإن الكود قد يكون مفيداً في الكشف عن حالة مستخدم لموقعي في وقت ما إن كان متصلاً بالإنترنت أم لا (ألا يكفي أن نضايقه خلال زيارته للموقع فقط ، لا بل أيضاً نذهب نحن له وهو في بيته بعد خروجه من الموقع :) ) المهم أن طلبي كان مختلفاً قليلاً ، فأنا لا أريد التأكد إن كان متصلاً بالشبكة أم لا ، لا .. بل اريد أن أعرف إن كان متواجداً على موقعي أم لا وهذا عن طريق رقم عنوان IP ، طبعاً هذا بفرض حالة سكونه ، وإلا فتحركه داخل الموقع من الممكن أن يعطيني مؤشر على تواجده

أرجو أن تكون والإخوة قد وصلتكم الفكرة

وبارك الله فيكم

#4

الاخ الكريم

كيف نتبع مستخدم فى حالة سكونه؟

متى وكيف ؟ ما الحدث الذى سوف ينفذ فيه الكود ؟ هل هذا ممكن ؟؟؟؟؟؟؟؟؟

اعتقد ان السيرفر لا يشعر بالمستخدم الامن خلال حركته فعندما يتخطى المستخدم مدة معينه ساكنا يتم حذف ملف الجلسة ال session الخاص به .

اى السيرفر لا يشعر بالمستخدم فى حالة سكونه فكيف سيتم تنفيذ كود معين فى هذا الفترة؟

#5

نعم هذا كلام سليم !

:)

ولكني وجدت حدثاً ، وهو دخول زائر آخر للموقع ! فعند دخول زائر آخر يمكنني من خلال قاعدة البيانات اختبار حالة عدة عناوين IP وهنا السؤال الذي لا يجد حلاً يفرض نفسه .. كيف يمكن للموقع الكشف عن IP إن كان متصلاً به أم لا ؟

#6

هناك فكرة من خلال ملف Global.asax

عند دخول الزائر للموقع تقوم بتخزين ال IP ألخاص به في كلاس يعتمد ال HashTable كبنية له و كل Item بداخل ال HashTable عبارة عن Item من كلاس اخر عبارة عن بيانات المستخدم لأن ال HashTable سوف يأخذ قيمة واحدة وبالتالي نحن نجعل القيمة الواحدة عبارة عن كائن معقد أي يحوي أكثر من معلومة ..

انتهينا من اول مرحلة .. الان المرحلة الثانية و هي التأكد من بقاء المستخدم.

كلنا يعلم ان الحدث Session_End غير فعال احيانا خاصة عند خروج المتصفح من خلال إغلاق النافذة و ليس من خلال اختيار حدث يزيل ال Session و هنا تكمن فائدة الكائن المخزن داخل ال HashTable حيث نقوم بالإضافة إلى تخزين بيانات ال IP بإضافة وقت دخول المستخدم و بالتالي كل عشرين دقيقة نقوم بفحص محتويات ال IPs الموجودة داخل الكلاس و التأكد من وجود كل زائر من خلال ملف global.asax و من ثم تتم إزالة من ترك الموقع والإحتفاظ بمن هو موجود.

حقيقة لم أجربها حتى الان ولكنا فكرة قد خطرت ببالي و أعتقد أنها تصلح .. فما رأيك ؟

You can fly while you can touch the sky

#7

أخ محمد فكرتك هذه نثل فكرت باقي المنتديات كأنك تقوم بعملية تخزين في قواعد البيانات وتقوم بالفحص كل فتره معينه عند دخول مستخدم آخر.

الأخ محمد النحراوي ما يريده بالزبط هو أنه عند دخول مستخدم أخر يقوم بفحص عناوين ال IP الآخري هل هي فعلا متصلا بموقعه الأن أم لاء وليس فحص كل 20 دقيقة.

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

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#8

مرحباً بالإخوة الأفاضل :)

نعم أخي محمد أنا لا أريد الفحص كل فترة ، وحتى أكون واضحاً فالفكرة التي أريد تنفيذها هي محاولة لحل المشكلة العالمية Who Is Online

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

الحل الذي ذكره الأخ العزيز عبد الله حل مناسب جداً ومجرب وفعال ولكن للأسف ليس مائة بالمائة ، فأنا هنا فقط سأتصيد إغلاق المستخدم للنافذة من زر الإغلاق (X) في الأعلى ، لكن ماذا لو ضغط المستخدم ALT + F4 أو فعل أي شيء مما ذكرته بالأعلى ، هنا أيضاً سيظل هذا المستخدم ONLINE رغم أنه فعلياً قد خرج

لذا فكرت ورأيت أن الحل يجب أن يكون من على السيرفر SERVER SIDE ، وقلت لو أن هناك طريقة يختبر بها السيرفر (عند الحدث : دخول أي مستخدم جديد أو تحرك مستخدم موجود) أقول يختبر عناوين ال IP التي سجلت بالفعل عند إطلاق حدث SESSION START أو تسجيل دخول المستخدمين lOGIN فيختبر هذه العناوين ويقارنها بالعنواوين الموجودة فعلياً عنده وهنا نكون قد وضعنا يدنا تماماً على الحالة الفعلية لبيانات المتصلين ، ونغلق ملف ال WHO IS ONLINE :)

طبعاً هناك أمر هام جداً يجب أن يكون معروفاً وهو أن هذه الطريقة ستأخذ وقتاً ليس بالهين ، وتحميلاً زائداً على السيرفر والاتصال بقاعدة البيانات خاصة إذا كان موقع يرتاده عدد كبير من المستخدمين ، وهنا يبرز السؤال المهم .. هل هي مسألة ضرورية أن أعرف إحصائيات المتصلين بي في ال REAL TIME ؟ ، وتكون الإجابة لا بالطبع ، فهذه مسألة غير ضرورية بالمرة .... وعلى رأي أحد المبرمجين الأجانب "طبعاً هناك مواقع تستفيد من هذه الإحصائيات ، وهي مهمة بالنسبة لها ، لكنني لا أعرفها ، فإذا عرفت أحدها أرجو منك أن تخبرني !!! " :)

#9

السلام عليكم

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

لنفترض أنه كان لديك 20 مثلا متواجد حسب طريقتك ، وبعدها دخل مستخدم أخر بعد 60 دقيقة والسابقين غير متواجدين.

المعنى هو صعب أن تعرف المتواجدين فعليا في موقعك حتى بطريقتك هذه لكن طريقتك اذا فعلا هناك طريقه فهي تعتبر الأنسب أنها لا تفحص كل دقيقة فقط تفحص في حالة دخول مستخدم آخر ، بدل من المنتديات تفحص كل 30 دقيقة مثلا حسب الوقت المخزن في قاعدة البيانات عند دخول كل المستخدم.

ولكن ان شاءالله سوف احاول البحث بطريقتك باستخدام رقم ال IP.

لكن لاحظ أنه عمل close تعتبر بنظري افضل طريقه لانها لا تعتمد على دخول مستخدم آخر، وسوف تكون تقريبا بنسبة 98% دقيقة ، لانه كما افترض بأن يقوم بعمل ALT + F4 والتي نادراً ما قد تحدث.

مع التحية

تم تعديل هذه المشاركة بواسطة عبدالله جابر شقليه في 27 أكتوبر 2005 في 00:55

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#10

وعليكم السلام ورحمة الله

اقتباس
لنفترض أنه كان لديك 20 مثلا متواجد حسب طريقتك ، وبعدها دخل مستخدم أخر بعد 60 دقيقة والسابقين غير متواجدين.

هنا سيتم عمل الاختبار (لأن هناك مستخدم يزور صفحة ما ، وهذا هو الحدث المطلوب) ، ويقو البرنامج بالنظر لقاعدة البيانات ليجد فيها مثلاً - حسب مثالك - 20 عنوان IP ومعناها 20 مستخدم ، فيقوم بعمل اختبار متتالي لكل عنوان من هذه العناوين ، فيجد أن الأول لا يعمل الثاني كذلك الثالث .... إلى الأخير ، فيقوم بتغيير حالة هذه العناوين (أو الأشخاص) إلى غير متصل ، ومن ثم يقوم بعرض آخر نتيجة وهي أنه لا أحد متصل بخلاف الزائر الجديد بالطبع لأنه موجود أصلاً وفعال ، وهكذا سيظهر لنا الموقع (أو لهذا الزائر) أنه وحده ، وهنا المزية المطلوبة

بالنسبة لمسألة أن الأمر مستحيل ، فهذا هو السبب الذي دعاني للبحث ، لأن الموضوع عالمياً ميئوس منه <_<

أما مسألة سكريبت تصيد الضغط على CLOSE فأظن أنه ستنخفض فعاليته ، إذا وضعنا في الاعتبار أن الزائر قد لا يغلق الصفحة أصلا ، بل ينتقل منها لغيرها في موقع آخر ، ومع ذلك هو في نظري بالفعل أكفأ حل

عموماً ننتظر إبداعاتك (كما تعودنا) :) و من بقية الإخوة كذلك

بارك الله فيك ونفع بك

#11

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

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#12

إن كان السؤال من ناحية السيرفر الذي يحمل الموقع هل يعده موجوداً أم لا فأظن أن للسيرفر كذلك SESSION وحقاً لا يمكنني الإجابة من هذه الناحية فهي تحتاج لرجل متخصص

أما إذا كان من ناحية البرنامج ، وهل سنعده نحن متواجداً أم لا فإجابتي هي نعم سنعده متواجاً لأنه بالفعل متواجد إلى ان تنتهي فترة خموله هذه بإنهاء جلسته ، وهنا طبعاً يجب ان يكون هناك كود في حدث ال SESSION END يخرجه من قائمة المتواجدين والمسجلة في قاعدة البيانات

#13

يبقى أخ محمد بالنسبة لل IP لا اعتقد سوف تكون ناجحة اذا عده السيرفر غير متصل.

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#14

أرى ان لديك فكرة معينة متوقفة على هذا الأمر

عموماً ننتظر أحد خبراء إدارة السيرفرات أو الشبكات يفتينا

#15

الاخوه الافاضل ....

طرح الاخ عبدالله جابر شقليه منطقي جدا ...

مداخلتي هنا لا تتعلق بأكواد ال ASP التي من الممكن ان تكتب و لكن ما يتعلق بجانب السيرفرات المضيفه.

اولا ال Server الذي يحمل ال Host للمواقع يعتمد اليه معينه في الكشف عن الزوار او الاعضاء و ذلك باعتماد خاصية Real Time Connection With Bandwidth Limitations

لاحظ النظريه فيها كلمة Bandwidth ؟؟؟!!

ال Bandwidth متحكم رئيسي في هذا الموضوع ... مثال: Bandwidth معينه للهوستينج تحتمل على سبيل المثال 100 مستخدم في نفس اللحظه...

الان طبعا هذا هو ال Maximum بالنسبه لعدد ال Users و لكن عمليا السيرفر لن يسمح لك بتخطي الحد او لن يسمح لمستخدم اخر بالدخول إلا عن طريق الاتي ...

يقوم السيرفر بحسابات دورية لمدى فاعلية المستخدم على ال Bandwidth ... بمفهوم هل هو Active ام لا مع العلم ان السيرفرات تختلف في الزمن المحدد للفحص الدوري فمنها 10 دقائق و منها 15 دقيقه و ما الى ذلك ..

طبعا قضية الاي بي ايضا دارجه من خلال الخوارزميه في البحث ...

النظريه اصبحت ان لدينا عدد ال Maximum من المستخدمين ... و حتى لو لم ينقضي الزمن اللازم للبحث الدوري ... هنا تقوم داله بمعينه بعمل Force Testing على ال Users و اي يوزر خامل او شبه خامل ... لاحظ شبه خامل ... يدخل السيرفر في مفاضله على كيفية اخراج المستخدم او عدم اخراجه اما بخوارزميات ال Hash او ب Random Functions و يقوم بحذف المستخدم و السماح للبديل بالدخول ....

المشكله تكمن في هذه النظريه بفرض مجيء 100 مستخدم اخرين غير ال 100 الموجودين .... نظرية ال Worst Case في ال Complexity لهذه الخوازميه تعطي الدليل بعقمها بغض النظر عن فاعليتها في الحاله المذكوره سابقا ...

عنصر ال Traffic ايضا يحكم بشكل او باخر ... و لكنني صراحة لا اعلم كيف و لماذا فهذا الموضوع يتعلق بالاعدادات الدوليه للبلد المجوز لديها ال Host ...

بالمناسبه ... هل تعلمون ان الزر X في المتصفح عندما تغلقه بهذه الطريقه هو نفسه الامر ALT + F4 ... هذا فقط للعلم فكلاهما اوامر (سطحيه( او ما يسمى بال Alias للأمر الرئيسي ألا و هو Close او Exit ...

تحياتي للجميع

#16

السلام عليكم

شكراً للأخ محمد أكرم على التوضيح فهذا يعتبر بأنه فكرة الكشف عن طريق ال IP لا تعد طريقة ناجحة لانه السيرفر لن يعتبر بأن رقم ال IP هذا متواجد طالما فقط قام بفتح الصفحة ، يبقى مشكلة alt+f4 محلوله يبقى فقط مشكلة انه غير عنوان الموقع ، ربما هناك حدث عليها بالجافا سكربت ممكن من خلالها ايضاً نقوم بالعمليه وان شاءالله أقدر ألاقي حدث يحل هذه المشكلة.

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#17

السلام عليكم

الأخ الفاضل محمد أكرم جزاك الله خيراً على الطرح الطيب

عندي فقط إضافة بسيطة بالنسبة لآخر نقطة وهي

اقتباس
بالمناسبه ... هل تعلمون ان الزر X في المتصفح عندما تغلقه بهذه الطريقه هو نفسه الامر ALT + F4 ... هذا فقط للعلم فكلاهما اوامر (سطحيه( او ما يسمى بال Alias للأمر الرئيسي ألا و هو Close او Exit ...

هذا الأمر ليس في المتصفحات فقط بل في كافة النوافذ ، ولكن متى يمكننا هنا التعامل معهما معاً بدلالة واحدة او بدلالة أحدهما الآخر ؟ يمكن هذا في حالة كان الحدث الذي ننطلق إطلاقه هو onclose مثلاً ، و لكن نحن نتعامل هنا بشكل مختلف ، فالتعامل يكون مع أحداث الفأرة أو الأزرار فيتم إختبار مكان المؤشر على النافذة وقت إطلاق الحدث click مثلاً ومن ثم يقوم بالتفاعل على أساس ما وجد ، وهنا لا دخل مطلقاً في أحداث الأزرار ، والدلالة ليست واحدة ، ولذلك نجد أخانا الكريم عبد الله قال في آخر كلامه

اقتباس
يبقى مشكلة alt+f4 محلوله يبقى فقط مشكلة انه غير عنوان الموقع ، ربما هناك حدث عليها بالجافا سكربت ممكن من خلالها ايضاً نقوم بالعمليه وان شاءالله أقدر ألاقي حدث يحل هذه المشكلة.

وفقني الله وإياكم للخير

#18

السلام عليكم

اقتباس
نجد أخانا الكريم عبد الله قال في آخر كلامه

يبقى مشكلة alt+f4 محلوله يبقى فقط مشكلة انه غير عنوان الموقع ، ربما هناك حدث عليها بالجافا سكربت ممكن من خلالها ايضاً نقوم بالعمليه وان شاءالله أقدر ألاقي حدث يحل هذه المشكلة.

أخ محمد النحراوي شاهد هذا الكود

<html dir="rtl">
<HEAD>
<script LANGUAGE="JavaScript">
  <!--
   function unload() { 
   var jumpToHere;
	var winOptions;
	var popUpWindow;

	jumpToHere = "Logoff.asp";

	winOptions = "top=100,left=200,width=300,height=100,scrollbars=no";
	popUpWindow = open(jumpToHere, "MyWindow", winOptions);
   }
//-->
</SCRIPT>
<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>

<BODY onUnload="unload()">
<P>
</BODY></HTML>

جرب عمل إغلاق وجرب عمل alt+f4 وجرب تغير عنوان المتصفح وشاهد هل هكذا استطعنا من حل مشكلتنا كلها أم لاء :D

تم تعديل هذه المشاركة بواسطة عبدالله جابر شقليه في 27 أكتوبر 2005 في 05:54

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#19

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

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#20

لكن لا تعتبر نتيجة 100% أيضاً لأنه فرضا علق الجهاز معاه وخبطها restart المستخدم، برضه راح تبقى الحل ده مش 100%.

تم تعديل هذه المشاركة بواسطة عبدالله جابر شقليه في 27 أكتوبر 2005 في 05:53

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#21
اقتباس
هذا الأمر ليس في المتصفحات فقط بل في كافة النوافذ ، ولكن متى يمكننا هنا التعامل معهما معاً بدلالة واحدة او بدلالة أحدهما الآخر ؟ يمكن هذا في حالة كان الحدث الذي ننطلق إطلاقه هو onclose مثلاً ، و لكن نحن نتعامل هنا بشكل مختلف ، فالتعامل يكون مع أحداث الفأرة أو الأزرار فيتم إختبار مكان المؤشر على النافذة وقت إطلاق الحدث click مثلاً ومن ثم يقوم بالتفاعل على أساس ما وجد ، وهنا لا دخل مطلقاً في أحداث الأزرار ، والدلالة ليست واحدة

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

اما عندما نتحدث عن المتصفح فهو يعمل تحت بيئة ويندوز و يستخدم ال Commands الخاصه بال Windows Infrastructure مثله مثل اي نافذه اخرى.

إذا فحل العبقري عبدالله جابر شقليه شافي ووافي و ربما يكون الاقرب للحل الامثل كما ارى.

عبدالله ... مش عارف شو احكي عنك إلا انك فعلا تستاهل كل خير ... ذكائك و عبقريتك اعجبت بهما بشكل كبير.

تمنياتي لك بالتقدم و النجاح يا اخي العزيز. :)

#22

شكراً لك أخي محـمـد أكــرم على ردك وأنت فعلا كنت مذهل جداً من خلال توضيحك والمامك الواسع في الشبكات والتعامل مع السيفرات

تم تعديل هذه المشاركة بواسطة عبدالله جابر شقليه في 27 أكتوبر 2005 في 05:51

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#23

السلام عليكم

حياك الله أخي عبد الله

قمت بإنشاء صفحة htm جديدة ، ووضعت فيها الكود ، وجربت إغلاق ، وجربت alt +f4 ، وأغلقت النافذة بشكل عادي

أما عندما غيرت العنوان الحالي ، لم ينتقل إليه ، ولكن عند ضغط زر إدخال ENTER بشكل سريع مرتين متتاليتن مثلاً ينتقل إلى الموقع الجديد

عموماً أرى أن مسألة استخدام unload لتصيد إغلاق المتصفح لن تفلح لأن هذه تحدث عند محاولة الخروج ، لذلك فلح أمر الانتقال (نوعاً) ، أما الإغلاق بواسطة alt + f4 فهذا سيتم فقط باصطياد أحداث لوحة المفاتيح ، بإذن الله تعالى نجربها

الأخ الكريم محمد أكرم ، لم أعد أفهمك :)

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

اما عندما نتحدث عن المتصفح فهو يعمل تحت بيئة ويندوز و يستخدم ال Commands الخاصه بال Windows Infrastructure مثله مثل اي نافذه اخرى.

ما معنى هذا !!

طيب سأوضح ما أردت قوله ، أنت أخي الكريم تريدنا أن نتعامل مع أي حدث ؟ أظنك قلت أن الضغط على CLOSE يساوي الضغط على الزرين ALT + F4 معاً ، ولا أظن أن احداً في هذا المنتدى بأكمله ينكر هذا

ولكن هذا عندما التقط حدث إغلاق النافذة ، وهذا للأسف غير موجود ، وهذا وجه الاختلاف بين التعامل مع سكريبت داخل المتصفح ، والتعامل مع نافذة عادية FORM من لغة مثل VB.NET مثلاً ، لأن في الأخيرة حدث يتم اصطياده عند إغلاق النافذة او الفورم ، سواء كان هذا الإغلاق بالضغط على زر الإغلاق CONTROL BOX او ضغط ALT + F4 أو أي شيء آخر مماثل يؤدي لإغلاق النافذة

هنا يمكننا ان نتعامل مع الإجراء الذي نريده ولا نهتم بالطريقة المهم أن النافذة ستغلق

أما في المتصفح فالامر يختلف ، فلا يوجد حدث يمكن اصطياده عند محاولة إغلاق المتصفح

لذا ، يلجأ المبرمجون إلى عمل تركيبة من أكواد جافا تستخدم أحداث أخرى حتى يمكننا حل الموقف

وهذا مثال بسيط على ما أقول :

function MyFunction()
{
    if (event.clientY < 0)
        window.top.location.href = "<path to logout page>";
}

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

هكذا

<BODY onclick="MyFunction()">

إذا تم استدعاء الدالة عند ضغط زر الفارة ، وليس عند محاولة الإغلاق ، لذلك لا علاقة لضغط alt+f4 بهذا الأمر ، إلا ان ننشيء لها حدثاً آخر يلتقط هذا الأمر عند حدوثه

أرجو أن يكون اتضح لك الأمر الآن

وفقك الله للخير

#24

ما وضعته لك من كود أخ محمد نجح معي وعند عمل alt+f4 نجح وخرجت نافذه واعتقد عن تغير عنوان المتصفح والذهاب إلى صفحة اخرى سوف تخرج أيضا النافذه فاعتقد مسالة ال alt+f4 تم حلها ومسألة وضع عنوان جديد تم حلها.

وان شاءالله غداً سوف اقوم بعمل مثالي عملي لها اذا وجدت الوقت.

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#25

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

a.rar

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…