السلام عليكم ورحمة الله وبركاته..
هي برامج تخدم صفحات الأنترنت و تربط بينها و بين البرمجيات التي لا تتفاهم بلغات الإنترنت. مثلاً لدينا صفحة على الإنترنت. و صفحات الأنترنت ما تفهم غير ال html و أي شي ثاني ممكن نضعة داخل ال html مثل ال JavaScript و DHTML وغيرها. و لدينا قاعدة بيانات مكتوبة على ال Oracle، وال Oracle تفهم SQL. المسألة أننا نريد أن ندخل البيانات عن طريق المتصفح بحيث تذهب أوتوماتيكياً إلى قاعدة البيانات. مشكلة في التفاهم. واحد يتكلّم html والثاني يتكلّم Sql كأنه واحد يتكلم صيني، والثاني عربي. هنا يأتي دور ال CGI و هي اختصار: Common Gateway Interface و هي بيئة في الوسط و تعنى بالترجمة بين الطرفين أو بشكل أدق بالربط بين الطرفين. يمكن كتابة ال CGI بعدة لغات مثل: Perl, JSP,PHP, ASP وغيرها الكثير. هذه اللغات تعتبر مرنة و تستطيع أن تنتج صفحات الأنترنت و في نفس الوقت تستطيع أن تتعامل مع البرامج المختلفة على الخادم الذي تكون محفوظة عليه. كما هو موضّح في الشكل:
كي نستخدم السي جي آي يلزم توفّر ثلاث أمور
المشكلة لنفرض أننا نريد تصميم صفحة فيها فورم، و نريد أن نرسل محتوى الفورم لشخص معيّن التفكير في الحل ما الذي نريده؟ نريد ارسال بيانات من فورم إلى بريد محدد. نستطيع تصميم الصفحة والفورم، صح؟ هذه محلولة لدينا البريد الذي نريد أن نرسل له، صح؟ هذه أيضاً محلولة لكن، المشكلة تكمن في أن ال html لا تستطيع بأي حال من الأحوال أن ترسل بريد الكتروني بنفسها؟ لماذا؟ لأن ارسال البريد الإلكتروني يعني استخدام خاصية من خصائص الخادم و هي ال sendmail و هذه الخاصية هي المسؤولة عن ارسال البريد الإلكتروني. و لكن sendmail لا تتكلّم بلغة الhtml أيضاً. إذا نحتاج إلى رنامج cgi مكتوب بلغة أو بأخرى يقوم بالربط بين الإثنين :-) الحل
مفاجــــــــــــــــــــــــــــأة. لن يعمل السكربت، و سيعطيك خطأ مفاده Server Error لماذا؟ أه ها.. قلت لماذا. بسبب الترخيص! (و هو ما سأقوم بشرحة في درس التراخيص) لذا علينا قبل الخطوة (5) أن نضع الخطوة (4.5) و هي تغيير ترخيص ملف السيجي آي عن طريق ال chmod إلى 755 . (انظر الملحق لهذا الموضوع في الأسفل) مرّة ثانية الخطوة (5).. سيعمل تمام التمام ان شاء الله إذا كان مدير النظام يسمح لك باستخدام خاصية ال sendmail أرجو أن أكون أفدت الجميع، وفي حال وجود أسئلة سأحاول أن أعمل جاهدة للإجابة عليها ان شاء الله :-) وفوق كل ذي علم عليم |
منتدى الحاسب والجوال العربي