دليل المستخدم إلغاء

فهم تطبيقات الويب

 

 

ملاحظة:

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

حول تطبيقات الويب

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

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

الاستخدامات الشائعة لتطبيقات الويب

لتطبيقات الويب الكثير من الاستخدامات لزائري الموقع ومطوريه، منها ما يلي:

  • يتيح للزائرين البحث عن المعلومات على نحو سريع وسهل في المواقع الغنية بالمحتوى.

    يمنح هذا النوع من تطبيقات الويب للزائرين القدرة على البحث في المحتوى وتنظيمه والتنقل خلاله بالطريقة التي يرونها ملائمة. تشمل الأمثلة شبكات الإنترانت بالشركة، وMicrosoft MSDN (www.msdn.microsoft.com)، وAmazon.com (www.amazon.com).

  • تتيح جمع البيانات التي يوفرها زائرو الموقع وحفظها وتحليلها.

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

  • تتيح تحديث مواقع الويب التي تحتوي على محتوى دائم التغير.

    توفر تطبيقات الويب على مصمم الويب عناء التحديث المستمر لمحتوى HTML بالموقع. حيث يزود موفرو المحتوى، مثل محررو الأخبار، تطبيق الويب بالمحتوى، ثم يقوم تطبيق الويب بتحديث الموقع تلقائيًا. تشمل الأمثلة Economist (www.economist.com) وCNN (www.cnn.com).

مثال على تطبيقات الويب

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

تكمن مشكلة كريس في أن برنامج اللياقة البدنية لاقى نجاحًا كبيرًا. ويشارك فيه الآن الكثير من الموظفين لدرجة أن رسائل البريد الإلكتروني تنهال على كريس آخر كل شهر. لذا يسأل كريس جانيت إذا كان هناك حل مستند إلى الويب لهذه المشكلة.

تقترح جانيت تطبيق ويب مستند إلى الإنترانت ليقوم بالمهام التالية:

  • السماح للموظفين بإدخال عدد الأميال في صفحة ويب باستخدام نموذج HTML بسيط

  • تخزين عدد الأميال للموظفين في قاعدة بيانات

  • حساب نقاط اللياقة البدنية استنادًا إلى بيانات عدد الأميال

  • السماح للموظفين بتتبع تقدمهم الشهري

  • منح كريس إمكانية الوصول بنقرة واحدة إلى إجمالي النقاط في نهاية كل شهر

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

طريقة عمل تطبيق الويب

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

على سبيل المثال، يمكنك تصميم صفحة لعرض نتائج اللياقة البدنية، مع ترك بعض المعلومات (مثل اسم الموظف والنتائج الخاصة به) ليتم تحديدها عندما يطلبها موظف معين.

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

معالجة صفحات الويب الثابتة

يتكون موقع الويب الثابت من مجموعة صفحات HTML والملفات المرتبطة التي تتم استضافتها على كمبيوتر يقوم بتشغيل خادم ويب.

وخادم الويب هو برنامج يساعد صفحات الويب في الاستجابة للطلبات التي ترسلها مستعرضات الويب. ويتم إنشاء طلب الصفحة عندما ينقر أحد الزائرين على ارتباط في صفحة ويب أو يحدد إشارة مرجعية في مستعرض أو يُدخل عنوان URL في مربع نص العناوين لمستعرض.

ويتم تحديد المحتوى النهائي لصفحة الويب الثابتة بواسطة مصمم الصفحة، ولا يتغير عند طلب الصفحة. إليك المثال التالي:

<html>
<head>
<title>Trio Motors Information Page</title>
</head>
<body>
<h1>About Trio Motors</h1>
<p>Trio Motors is a leading automobile manufacturer.</p>
</body>
</html>
<html> <head> <title>Trio Motors Information Page</title> </head> <body> <h1>About Trio Motors</h1> <p>Trio Motors is a leading automobile manufacturer.</p> </body> </html>
<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
    </body> 
</html>

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

ملاحظة:

وعلى وجه الدقة، قد تكون الصفحة "الثابتة" ليست ثابتة مطلقًا. على سبيل المثال، من الممكن أن تحول صورة تمرير أو محتوى Flash (ملف SWF) الصفحة الثابتة إلى صفحة نابضة بالحياة. ومع ذلك، تشير هذه الوثائق إلى الصفحات على أنها ثابتة عندما يتم إرسالها إلى المستعرض دون تعديلات.

عندما يتلقى خادم الويب طلبًا لصفحة ثابتة، يقرأ الخادم الطلب ويعثر على الصفحة ثم يرسلها إلى المستعرض الطالب، كما يوضح المثال التالي:

معالجة صفحة الويب الثابتة

A. يطلب مستعرض الويب صفحة ثابتة. B. يعثر خادم الويب على الصفحة. C. يرسل خادم الويب الصفحة إلى المستعرض الطالب. 

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

معالجة الصفحات الديناميكية

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

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

معالجة الصفحات الديناميكية

A. يطلب مستعرض الويب صفحة ديناميكية. B. يعثر خادم الويب على الصفحة ويمررها إلى خادم التطبيقات. C. يفحص خادم التطبيقات الصفحة بحثًا عن تعليمات ثم ينهيها. D. يمرر خادم التطبيقات الصفحة النهائية مرة أخرى إلى خادم الويب E. يرسل خادم الويب الصفحة النهائية إلى المستعرض الطالب 

الوصول إلى قاعدة بيانات

يتيح لك خادم التطبيقات إمكانية استخدام موارد من جانب الخادم، مثل قواعد البيانات. على سبيل المثال، قد توجه صفحة ديناميكية خادم التطبيقات إلى استخراج البيانات من قاعدة بيانات وإدراجها في تعليمات HTML البرمجية للصفحة. لمزيد من المعلومات، راجع www.adobe.com/go/learn_dw_dbguide_ae.

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

يطلق على تعليمات استخراج البيانات من قاعدة بيانات اسم استعلام قاعدة البيانات. ويحتوي الاستعلام على معايير بحث يتم التعبير عنها بلغة قاعدة بيانات يطلق عليها اسم SQL ‏(Structured Query Language). وتتم كتابة استعلام SQL في البرامج النصية أو العلامات من جانب الخادم للصفحة.

لا يمكن أن يتصل خادم التطبيقات مباشرة بقاعدة بيانات، لأن التنسيق الخاص بقاعدة البيانات يعرض بيانات غير قابلة لفك الترميز بطريقة مشابهة جدًا للبيانات الغير قابلة لفك التشفير الخاصة بمستند Microsoft Word يتم فتحه في Notepad أو BBEdit. ولكن يمكن أن يتصل خادم التطبيقات بقاعدة بيانات فقط من خلال وسيط متمثل في برنامج تشغيل قاعدة بيانات: وهو برنامج يعمل كمترجم بين خادم التطبيقات وقاعدة البيانات.

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

وإليك فيما يلي استعلام قاعدة بيانات بسيط تمت كتابته بلغة SQL:

SELECT lastname, firstname, fitpoints
FROM employees
SELECT lastname, firstname, fitpoints FROM employees
SELECT lastname, firstname, fitpoints 
FROM employees

تنشئ العبارة مجموعة سجلات مكونة من ثلاثة أعمدة وتقوم بتعبئتها بصفوف تحتوي على الاسم الأخير والاسم الأول ونقاط اللياقة البدنية لكل الموظفين في قاعدة البيانات. لمزيد من المعلومات، راجع www.adobe.com/go/learn_dw_sqlprimer_ae.

يوضح المثال التالي عملية إرسال استعلام إلى قاعدة بيانات وإرجاع البيانات إلى المستعرض:

الوصول إلى قاعدة بيانات

A. يطلب مستعرض الويب صفحة ديناميكية. B. يعثر خادم الويب على الصفحة ويمررها إلى خادم التطبيقات. C. يفحص خادم التطبيقات الصفحة بحثًا عن تعليمات. D. يرسل خادم التطبيقات استعلامًا لبرنامج تشغيل قاعدة البيانات. E. ينفذ برنامج التشغيل الاستعلام على قاعدة البيانات. F. يتم إرجاع مجموعة السجلات إلى برنامج التشغيل. G. يمرر برنامج التشغيل مجموعة السجلات إلى خادم التطبيقات H. يقوم خادم التطبيقات بإدراج البيانات في الصفحة، ثم تمرير الصفحة إلى خادم الويب I. يرسل خادم الويب الصفحة النهائية إلى المستعرض الطالب. 

يمكنك استخدام أي قاعدة بيانات تقريبًا مع خادم التطبيقات، طالما تم تثبيت برنامج تشغيل قاعدة البيانات المناسب على الخادم.

إذا كنت تنوي إنشاء تطبيقات صغيرة منخفضة التكلفة، يمكنك استخدام قاعدة بيانات مستندة إلى ملف، مثل قاعدة البيانات التي تم إنشاؤها في Microsoft Access. وإذا كنت تنوي إنشاء تطبيقات مهمة للأعمال تتحمل المهام الشاقة، يمكنك استخدام قاعدة بيانات مستندة إلى خادم، مثل قاعدة البيانات التي يتم إنشاؤها في Microsoft SQL Server أو Oracle 9i أو MySQL.

إذا كانت قاعدة البيانات الخاصة بك موجودة على نظام آخر غير خادم الويب، فتأكد من أن لديك اتصالاً سريعًا بين النظامين حتى يمكن تشغيل خادم التطبيقات بسرعة وكفاءة.

تأليف الصفحات الديناميكية

تتألف عملية نشر صفحة ديناميكية من كتابة HTML أولاً، ثم إضافة برامج نصية أو علامات من جانب الخادم إلى HTML لجعل الصفحة ديناميكية. وعند عرض التعليمة البرمجية الناتجة، تظهر اللغة مضمنة في HTML للصفحة. وبالتالي، تُعرف هذه اللغات بلغات برمجة HTML المضمنة. يستخدم المثال الأساسي التالي اللغة ColdFusion Markup Language ‏(CFML):

ملاحظة: تمت إزالة دعم CFML من Dreamweaver CC والإصدارات اللاحقة.

<html>
<head>
<title>Trio Motors Information Page</title>
</head>
<body>
<h1>About Trio Motors</h1>
<p>Trio Motors is a leading automobile manufacturer.</p>
<!--- embedded instructions start here --->
<cfset department="Sales">
<cfoutput>
<p>Be sure to visit our #department# page.</p>
</cfoutput>
<!--- embedded instructions end here --->
</body>
</html>
<html> <head> <title>Trio Motors Information Page</title> </head> <body> <h1>About Trio Motors</h1> <p>Trio Motors is a leading automobile manufacturer.</p> <!--- embedded instructions start here ---> <cfset department="Sales"> <cfoutput> <p>Be sure to visit our #department# page.</p> </cfoutput> <!--- embedded instructions end here ---> </body> </html>
<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
        <!--- embedded instructions start here ---> 
        <cfset department="Sales"> 
        <cfoutput> 
        <p>Be sure to visit our #department# page.</p> 
        </cfoutput> 
        <!--- embedded instructions end here ---> 
    </body> 
</html>

تقوم التعليمات المضمنة في هذه الصفحة بتنفيذ الإجراءات التالية:

  1. إنشاء متغير تحت اسم department وتعيين السلسلة "Sales" إليها.

  2. إدراج قيمة المتغير، "Sales"، في تعليمة HTML البرمجية.

يقوم خادم التطبيقات بإرجاع الصفحة التالية إلى خادم الويب:

<html>
<head>
<title>Trio Motors Information Page</title>
</head>
<body>
<h1>About Trio Motors</h1>
<p>Trio Motors is a leading automobile manufacturer.</p>
<p>Be sure to visit our Sales page.</p>
</body>
</html>
<html> <head> <title>Trio Motors Information Page</title> </head> <body> <h1>About Trio Motors</h1> <p>Trio Motors is a leading automobile manufacturer.</p> <p>Be sure to visit our Sales page.</p> </body> </html>
<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
        <p>Be sure to visit our Sales page.</p> 
    </body> 
</html>

يرسل خادم الويب الصفحة إلى المستعرض الطالب، الذي يعرضها كالتالي:

About Trio Motors

Trio Motors is a leading automobile manufacturer.

Be sure to visit our Sales page.

يمكنك اختيار استخدام لغة برمجة نصية أو لغة مستندة إلى علامات حسب تقنية الخادم المتوفرة على الخادم لديك. وفيما يلي بيان باللغات الأكثر شيوعًا لتقنيات الخادم المعتمدة من قِبل Dreamweaver:

تقنية الخادم

اللغة

ColdFusion

ColdFusion Markup Language ‏(CFML)

صفحات الخادم النشطة (ASP)

VBScript

JavaScript

PHP

PHP

يمكن أن يقوم Dreamweaver بإنشاء البرامج النصية أو العلامات من جانب الخادم اللازمة لتشغيل صفحاتك، أو يمكنك كتابتها يدويًا في بيئة تعليمات Dreamweaver البرمجية.

مصطلحات تطبيقات الويب

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

خادم تطبيقات

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

تتضمن خوادم التطبيقات الشائعة ColdFusion وPHP.

قاعدة بيانات

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

قاعدة بيانات

برنامج تشغيل قاعدة البيانات

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

نظام إدارة قاعدة البيانات

(DBMS أو نظام قاعدة البيانات) برنامج يُستخدم لإنشاء قواعد البيانات أو معالجتها. وتتضمن أنظمة قواعد البيانات الشائعة Microsoft Access وOracle 9i وMySQL.

استعلام قاعدة البيانات

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

صفحة ديناميكية

صفحة ويب تم تخصيصها بواسطة خادم التطبيقات قبل إرسال الصفحة إلى أحد المستعرضات.

مجموعة سجلات

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

مجموعة سجلات

قاعدة بيانات ارتباطية

قاعدة بيانات تحتوي على أكثر من جدول واحد، مع مشاركة الجداول للبيانات. وتعتبر قاعدة البيانات التالية قاعدة بيانات ارتباطية لأن هناك جدولين يتشاركان العمود DepartmentID.

قاعدة بيانات ارتباطية

تقنية الخادم

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

تدعم بيئة تطوير Dreamweaver تقنيات الخوادم التالية:

  • Adobe® ColdFusion®

  • صفحات الخادم النشطة من Microsoft ‏(ASP)

  • PHP: ‏Hypertext Preprocessor ‏(PHP)

    يمكنك أيضًا استخدام بيئة تعليمات Dreamweaver البرمجية لتطوير صفحات لأي تقنية خادم أخرى غير مسرودة.

صفحة ثابتة

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

تطبيق ويب

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

خادم ويب

برنامج يرسل صفحات الويب استجابة للطلبات التي ترسلها مستعرضات الويب. ويتم إنشاء طلب الصفحة عندما ينقر أحد الزائرين على ارتباط في صفحة داخل المستعرض أو يحدد إشارة مرجعية في المستعرض أو يُدخل عنوان URL في مربع نص العناوين بالمستعرض.

تتضمن خوادم الويب الشائعة Microsoft Internet Information Server ‏(IIS) وApache HTTP Server.

احصل على مساعدة بشكل أسرع وأسهل

مستخدم جديد؟