قواعد المشاركة في المنتدى

(منتدى الأكسس) الموضوع:التخطيط البيانى بواسطة: (omar19-3) :: (منتدى مبرمجي ASP.NET) الموضوع:قيمة الحقل تقبل الزياده والنقص وافكار لمشروع ادارة مخزن ومستودع بواسطة: (THERE HENRY) :: (منتدى الأكسس) الموضوع:كود فتح قاعدة بيانات محمية بكلمة مرور فى قاعدة بيانات منقسمة بواسطة: (أبوالأنس) :: (منتدى الأكسس) الموضوع:ممكن ايجاد العلاقة الصحيحه بين جدولين بواسطة: (لهفة حنين) :: (منتدى الأكسس) الموضوع:مطلوب برنامج لإدخال بيانات ثم الطباعة على ورد بواسطة: (saudiman) :: (منتدى الأكسس) الموضوع:برنامج امتحانات بنظام الاختيار من متعدد بواسطة: (saudiman) :: (منتدى مبرمجي ASP) الموضوع:يا اخوان الرجاء المساعدة اخوكو مزنووووووق بواسطة: (زعيم جنوب) :: (القسم المفتوح) الموضوع:فتاه صغيره تحرج معلمتها باعظم سؤال على وجه الارض بواسطة: (أبو ليان) :: (منتدى تحليل و تصميم نظم المعلومات) الموضوع:مطلوب تحليل نظام شركة تأمين السيارات .. ارجو المساعده ممن لديه اي معلومه بواسطة: (ماروكو) :: (منتدى Microsoft Visual Basic) الموضوع:كيفية عمل خريطه بواسطة: (نصر اسماعيل) :: (منتدى Microsoft Visual Basic) الموضوع:تغير شكل البرنامج الى امتداد exe بواسطة: (نصر اسماعيل) :: (القسم المفتوح) الموضوع:حكم‏ بواسطة: (leema) :: (لغة PHP) الموضوع:طريقة البحث داخل ملف txt بواسطة: (هند الرياض) :: (منتدى الأكسس) الموضوع:مرة أخرى تعديل على قاغدة البيانات التالية بواسطة: (somame) :: (منتدى Microsoft Visual Basic) الموضوع:ماهو كود لـ previous next record first last بواسطة: (غزاوية أصيلة) :: (القسم المفتوح) الموضوع:من هم الذين تستجاب دعواتهم بواسطة: (غزاوية أصيلة) :: (القسم المفتوح) الموضوع:باللين تمتلك القلوب بواسطة: (غزاوية أصيلة) :: (القسم المفتوح) الموضوع:لقاء صحفى بواسطة: (ramies) :: (منتدى الأكسس) الموضوع:تعديل على قاعدة البيانات بواسطة: (أبو ليان) :: (منتدى الأكسس) الموضوع:هل يوجد طريقة لعمل الترقيم التسلسلي في الفورم بواسطة: (أبو ليان)


شاركوا باللقاء الصحفي لهذا الشهر


المواضيع المثبته: (منتدى ADO.NET العام) الموضوع:اصنع تقريرك في اقل من دقيقه واستغني عن الكريستال ريبورت بواسطة: (mero_make) :: (منتدى الكتب و المقالات) الموضوع:الشرح الكامل التفصيلي المصور لمعرفة نسخة الأكسيس وتخفيض الأمان برمجيا بواسطة: (zahrah) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:امن المعلومات وامن الشبكات بواسطة: (khaled helal) :: (منتدى الكتب الالكترونية) الموضوع:موقع لتحقق من وجود الكتاب الذى تبحث عنه بواسطة: (يوسف) :: (قسم التعاميم والشكاوي) الموضوع:الرتب في المنتدى بواسطة: (عبدالله جابر شقليه) :: (لغة PHP) الموضوع:مجموعة اكواد رائعة بواسطة: (محمد جمعة) :: (منتدى الكتب الالكترونية) الموضوع:كتاب كامل من جزئين يشرح access وبالتفصيل وقواعد البيانات وبالتفصيل بواسطة: (m.i.a.r) :: (منتدى ADO.NET العام) الموضوع:المشاركات المدرجه حول ( البدء مع ADO.NET ) بواسطة: (HnHn) :: (منتدى ADO.NET العام) الموضوع:انشاء قواعد البيانات برمجيا جداول - علاقات -قيود بواسطة: (شهرزاد) :: (منتدى مبرمجي ASP) الموضوع:مواقع يعطي سكربتات لكل لغات البرمجة بواسطة: (ahmadtec) :: (منتدى برمجة الألعاب) الموضوع:برنامج رائع لتصميم الألعاب بواسطة: (mjxp) :: (قسم النسخ والتحويل) الموضوع:برنامج تحويل قواعد البيانات العظيم بواسطة: (arabsboy) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:تنصيب أوراكل 8i النسخة الشخصية على ويندوز XP بواسطة: (راحـل) :: (منتدى Microsoft SQL Server) الموضوع:يومياً أسئلة sql server مجاناً بواسطة: (m.atassi) :: (قسم التعاميم والشكاوي) الموضوع:شروط المشاركة في المنتدى بواسطة: (عبدالله جابر شقليه) :: (منتدى مبرمجي ASP) الموضوع:تحزين سجلات داخل ملفات اكسل و xml وورد ..إلخ بواسطة: (عبدالله جابر شقليه) :: (أخبار التكنولوجيا) الموضوع:مع جوجل : ترجم أي موقع E الى العربية . بواسطة: (عبد الرحمن) :: (قسم الدعم الفني) الموضوع:هل تريد التحكم بجهازك كأنك محترف بواسطة: (ياسر جمال) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:ماهو الـ IPSec بواسطة: (khaled helal) :: (منتدى Borland Delphi) الموضوع:دروس دلفى بواسطة: (khaled helal)

عدد الصفحات : 4  1  2  3  4   > » إضافة رد إضافة موضوع جديد

> تحزين سجلات داخل ملفات اكسل و xml وورد ..إلخ
Bookmark and Share
تقييم الموضوع Label معدل التقيم:0
مشاركةالأربعاء,29/محرم/1426 هـ,10:45 مساءً
المشاركة #1

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3465
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



السلام عليكم
في بعض الأحيان نحن نحتاج إلى تحزين بعض السجلات من قواعد البيانات داخل ملفات ورد واكسل و xml وغيرها من الملفات، ويتم تخزين هذه الملفات عن طريق استخدام كائن file system object الذي سوف يقوم بإنشاء الملفات التي نريدها.
في الكود التالي سوف نقوم بعرض بيانات من جدول وتخزينها داخل ملف اكسل:

كود:


<html dir="rtl">

<body bgcolor="#FFFFFF">
<%

accessdb="state_info"


cn="DRIVER={Microsoft Access Driver (*.mdb)};"
cn=cn & "DBQ=" & server.mappath(accessdb)


Set rs = Server.CreateObject("ADODB.Recordset")


sql = "select state,statename,capital,year,order from states "


rs.Open sql, cn




name_file= "states.xls"

set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>State</th>")
act.WriteLine("<th nowrap>Abbreviaton</th>")
act.WriteLine("<th nowrap>Capital</th>")
act.WriteLine("<th nowrap>Year Entered</th>")
act.WriteLine("<th nowrap>Entrance Number</th>")
act.WriteLine("</tr>")



do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("statename") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("state") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("capital") & "</td>")
act.WriteLine("<td align=""right"">"& rs("year") & "</td>")
act.WriteLine("<td align=""right"">"& rs("order") & "</td>")
act.WriteLine("</tr>")


rs.movenext

loop



act.WriteLine("</table></body></html>")



act.close



response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"

%>

</body>
</html>




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


كود:

set fso = createobject("scripting.filesystemobject")

هنا نحدد الطريقة التي سوف نقوم بإنشاء الملفات عن طريقها وهي كائن file system object.
Set act = fso.CreateTextFile(server.mappath(name_file), true)
هنا سوف نضع المتغير act بأن يقوم بإنشاء الملف عن طريق الخاصية CreateTextFile ، مع تحديد اسم الملف الذي سوف نقوم بإنشائه، وهو الملف المخزن داخل المتغير name_file

كود:


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>State</th>")
act.WriteLine("<th nowrap>Abbreviaton</th>")
act.WriteLine("<th nowrap>Capital</th>")
act.WriteLine("<th nowrap>Year Entered</th>")
act.WriteLine("<th nowrap>Entrance Number</th>")
act.WriteLine("</tr>")



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


كود:

do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("statename") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("state") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("capital") & "</td>")
act.WriteLine("<td align=""right"">"& rs("year") & "</td>")
act.WriteLine("<td align=""right"">"& rs("order") & "</td>")
act.WriteLine("</tr>")


rs.movenext

loop




خيث هنا سوف نستخدم do while not rs.eof لعرض جميع السجلات.
وبعدها سوف يتم طباعة السجلات داخل الجدول.
وبعد أن يتم إنشاء جميع السجلات التي نريدها نقوم بإعلاق الملف الذي قمنا بإنشائه.
act.close
حيث أنها سوف تحدد بأنه تم الإنتهاء من إنشاء الملف.

CODE
response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"


هنا سوف يتم وضع رابط للملف الذي قمنا بإنشائه حتى تستطعون من تحميلها بعد أن تم إنشائه.

هكذا نكون قد انتهينا من كيفية إنشاء ملف اكسل.
وهذه نفس الطريقة لإنشاء ملف الورد، فقط كل ما عليك هو تغير امتداد الملف الذي نريد إنشائه بدل من الامتداد xls إلى doc.
ونفس الشئ لإنشاء ملف html فقط قم بوضع الامتداد.

وأيضاً لإنشاء ملف xml تتم بنفس الكود الذي بالأعلى، ولكن الاختلاف هو بدل من أن وضعنا كود ال html الجداول داخل الملفات فقط سوف نقوم بكتابة كود xml، ولكم التغيير:



كود:

<html>

<body bgcolor="#FFFFFF">
<%

accessdb="state_info"


cn="DRIVER={Microsoft Access Driver (*.mdb)};"
cn=cn & "DBQ=" & server.mappath(accessdb)


Set rs = Server.CreateObject("ADODB.Recordset")


sql = "select state,statename,capital,year,order from states order by states.order "


rs.Open sql, cn





name_file= "states.xml"


set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("
CODE PHP:
<?xml version=""1.0""?>")
act.WriteLine("<states>")


do while not rs.eof


counter=counter+1

act.WriteLine("<state id="""& counter &""">")
act.WriteLine("<state_abbrev>" & rs("state") & "</state_abbrev>" )
act.WriteLine("<state_name>" & rs("statename") & "</state_name>" )
act.WriteLine("<state_capital>" & rs("capital") & "</state_capital>")
act.WriteLine("<year_admitted>"& rs("year") & "</year_admitted>")
act.WriteLine("<order_admitted>"& rs("order") & "</order_admitted>")
act.WriteLine("</state>")


rs.movenext
loop


act.WriteLine("</states>")



act.close


response.write "<a href='states.xml'>States</a> (.xml) تم إنشاء الملف<br>"
response.write "on " & now() & "<br>"
%>

</body>
</html>




لا يوجد هناك فرق كبير سوى بدل أن قمنا بوضع كود ال html لإنشاء الملف قمنا باستبداله بكود ال xml.
أرجوا أن يكون هذا الدرس قد أفادكم، وأي ملاحظات او استفسار لا تترددوا بالكتابة.
مع تحياتي


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالسبت,09/فر/1426 هـ,05:01 مساءً
المشاركة #2

مشرف منتدى تصميم صفحات الويب
الرتبة في المنتدى:رائد

أيقونة المجموعة

المجموعة: المشرفين القدامى
المشاركات: 507
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:السعودية
رقم العضوية: 88



أخي عبدالله حاولت أطبق هذا الدرس

ونسقت هذا الكود


كود:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1256"%>

<html dir="rtl">

<body bgcolor="#FFFFFF">
<!--#include file="conn.asp" -->

<%


id=request.QueryString("id")
set rs=cn.execute("select * from student where class_id="&id&"")







name_file= "states.xls"

set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>اسم الطالب</th>")
act.WriteLine("</tr>")



do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("student_name") & "</td>" )
act.WriteLine("</tr>")


rs.movenext

loop



act.WriteLine("</table></body></html>")



act.close

response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"
%>

</body>
</html>



لكن يبدو لي في مشكلة لأنه يحمل بطيء وفي الأخير لا يظهر شي ؟؟؟

أرجو إفادتي .. وشكرا
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالسبت,09/فر/1426 هـ,05:11 مساءً
المشاركة #3

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3465
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



السلام عليكم
أخ alanees ربما انه يوجد لديك مضاد للفيروسات ومما يؤثر لعملية انشاء ملفات جديدة.
قم بوقف الفحص التلقائي لبرنامج المضاد للفيروسات ومن ثمه قم بتشغيل الصفحة وسوف تشاهد النتيجة بعدها.


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:00 مساءً
المشاركة #4

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



بارك الله فيك أخي الفاضل
وأنار الله بصيرتك بالخير

اريد ان استفسر اخي الفاضل عن اعداد التقارير
بالASP ... كيف يتم إعداد تقارير بالASP
هل يستخدم فيها مثل هذا الدرس
بأن أحفظ البيانات في ورد مثلا ثم يقوم بطاعتها

ولا هناك طريقة أخرى

أتمنى أن توضوحوا الأمر
وبارك الله فيكم


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:47 مساءً
المشاركة #5

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3465
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



أخت حفيدة السلف يتم استخدام ذلك عن طريق كرستال ريبورت 9 أو اصدار أعلى ويتم عمل كود لعملية استدعاء الملف الخاص للكرستال.


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:52 مساءً
المشاركة #6

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



طيب ياليت تكتب الطريقة
وأكون شاكره لك
وبارك الله فيك


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,07:25 مساءً
المشاركة #7

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3465
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



تفضلي اختي حفيدة السلف هذا الكود الخاص بال asp مع الكرستال ريبورت 9

 كود
<%

Option Explicit

' Open the Report
Dim Report
Set Report = CreateObject("CrystalClientDoc.ReportClientDocument")
Report.Open "C:\Temp\Sorts.rpt"

' Retrieve the customer name field object
Dim field, fieldIndex
fieldIndex = Report.Database.Tables(0).DataFields.Find("Customer Name", 0)
Set field = Report.Database.Tables(0).DataFields(fieldIndex)

' Create a new sort based on the customer name field
Dim sort
Set sort = CreateObject("CrystalReports.Sort")
sort.SortField = field

' Remove the sort previously defined in the Report file
Report.DataDefController.SortController.Remove(0)

' Add the new sort
Report.DataDefController.SortController.Add 0, sort

Dim viewer
Set viewer = CreateObject("CrystalReports.CrystalReportViewer")
viewer.ReportSource = Report.ReportSource

viewer.ProcessHttpRequest Request, Response

%>




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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,08:06 مساءً
المشاركة #8

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



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

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


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,24/فر/1426 هـ,04:09 مساءً
المشاركة #9

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



أخي الفاضل عبد الله
بارك الله فيك
بس أتمنى أن تشرح لنا الكود الخاص بالتقارير
شرح موجز .. لشو كل جملة
وهل يوجد اختلاف بين Crystal 8 , 9

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


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,24/فر/1426 هـ,05:32 مساءً
المشاركة #10

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3465
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



سوف أضع لك كود أفضل منه وأبسط بكثير


 كود

<%
Dim Viewer
Set Viewer = CreateObject("CrystalReports.CrystalReportViewer")
Viewer.ReportSource = "RAS://C:\SecuredReportWithParam.rpt"

' Set the database logon credentials, in this case for the first
' table in the report, which then propagates across any
' subsequent tables in the report
Viewer.DatabaseLogonInfos(0).UserName = "user id"
Viewer.DatabaseLogonInfos(0).Password = "password"

' Set the value of the first parameter field to a string. Other
' data types such as numbers and boolean values can be set
' here as well.
Viewer.ParameterFields(0).CurrentValues.Add "USA"

%>

الكود التالي:
 كود
Set Viewer = CreateObject("CrystalReports.CrystalReportViewer")

هنا سوف نستخدم الكائن الخاص في الكرستال ريبورت، فهكا أصبح المتغير Viewer من نوع CrystalReports.CrystalReportViewer.

 كود
Viewer.ReportSource = "RAS://C:\SecuredReportWithParam.rpt"


هنا تحددي مسار الوصول لملف الريبورت.

 كود
Viewer.DatabaseLogonInfos(0).UserName = "user id"
Viewer.DatabaseLogonInfos(0).Password = "password"


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

 كود
Viewer.ParameterFields(0).CurrentValues.Add "USA"

هنا تقومين بتمرير قيم للمتغيرات التي وضعيه في الكرستال لعملية الاستعلام.

وكما تشاهدين في المسار لقد تم وضع RAS وهذا لكي تبين أنك تستخدم Report Application Server.
وأيضاً ملف الكرستال ريبورت يجب أن يكون الامتداد له RPT.

مع التحية


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة

    

عدد المتصفحين لهذا المنتدى «1»: (الضيوف «1» - المتخفون «0»)
الأعضاء «0»: .

عدد الصفحات : 4  1  2  3  4   > » إضافة رد جديد إضافة موضوع جديد



 
الوقت الأن:اليوم,08:59 صباحاً بتوقيت القدس المحتلة

Powered By arabmoheet v3.1

منتديات المحيط العربي  -  راسلنا  -   أعلى
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)