اذهب إلى المحتوى

عبدالهادي الديوري

الأعضاء
  • المساهمات

    368
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    22

إجابات الأسئلة

  1. إجابة عبدالهادي الديوري سؤال في كيف يمكن اظهار رسالة عند وضع المؤشر على الرابط في javascript ؟ كانت الإجابة المقبولة   
    يُمكنك ببساطة أن تُضيف خاصيّة title لعنصر HTML بالنّص الذي تريد أن يظهر.
    المثال التّالي يُظهر النّص "نص يظهر بعد تمرير الفأرة فوق هذا الرّابط" عند تمرير الفأرة فوق رابط يُشير إلى موقع الأكاديميّة:
    <a href="https://academy.hsoub.com/" title="نص يظهر بعد تمرير الفأرة فوق هذا الرّابط">Hsoub Academy</a> وكما ترى، لا تحتاج إلى لغة جافاسكريبت، فقط لغة HTML كافيّة بالغرض.
  2. إجابة عبدالهادي الديوري سؤال في هل يمكن قفل الكود المصدري بلغة php؟ كانت الإجابة المقبولة   
    تقنيا لا يُمكن أن تقوم بالأمر، فالغرض من الشيفرة المصدريّة هو أن تعمل على خادوم من يحصل عليها، ولا يُمكنك أن تقوم بإغلاقها أو تشفيرها بحيث يتمكّن الخادوم من فهمها فقط دون الحاصل عليها، حتى ولو تمكّنت من إغلاقها مع إبقاء إمكانيّة الوصول إليها من طرف آخر فالشيفرة المصدريّة لا قيمة لها في هذه الحالة، فالغرض من مُشاركة الشّيفرة هو إتاحة تطويرها وتخصيصها لكل من يحصل عليها.
    على الرّغم ممّا سبق، فهناك طرق يُمكنك أن تحمي بها خوارزميات خاصّة كاستعمال واجهة برمجيّة واستضافتها على خادومك الخاص وإتاحة الوصول إليها لأشخاص مُحدّدين فقط، مثلا لنقل بأنّك استطعت أن تُنشئ برنامجا يقوم بتحويل أي كلمة مُفردة إلى جمعها في اللغة العربيّة لكنّك لا ترغب بمُشاركة الشيفرة أو أنّك لا ترغب بإتاحة استخدام مجّاني للشيفرة وتريد أن يستخدمها من يشتري حقوق الاستخدام منك فقط. في هذه الحالة يُمكنك انشاء موقع بسيط يُرجع جمع كلمة عند ارسال مُفردها، ولا يمكن للخدمة أن تعمل إلا إذا أرفق المُستخدم كلمة سر حصل عليها من المُطور إمّا بمُقابل أو مجّانا.
    مثال على الطّلب والإجابة:
    MyAPI.com/singular_to_plural?singular=كلمة?secret_key=secret => كلمات MyAPI.com/singular_to_plural?singular=موقع?secret_key=secret => مواقع MyAPI.com/singular_to_plural?singular=مكان?secret_key=secret => أمكنة MyAPI.com/singular_to_plural?singular=كلمة => تحتاج إلى كلمة سر لاستخدام هذه الخدمة لكن انتبه إلى أنّ لهذه الطّريقة العديد من السّلبيات، إذ يتطلّب توفير الخدمة مصاريف كثيرة من استضافة وإدارة الخادوم وكذا العمل على توفير الخدمة دون مشاكل، وقد يتطلّب الأمر حماية كبيرة.
  3. إجابة عبدالهادي الديوري سؤال في كيف أترجم ملف Sass إلى ملف CSS؟ كانت الإجابة المقبولة   
    لترجمة ملفّ مكتوب بلغة Sass إلى ملف CSS يكفي أن تقومي بتنفيذ الأمر التّالي على الطّرفيّة:
    sass style.scss المُخرج سيكون ملفّ CSS جاهزا، إذا أردت أن يقوم مُترجم Sass بمُشاهدة ملفّ ويقوم بترجمة فوريّة كلّما طرأ تغيير على ملفّ Sass يكفي إضافة --watch كالتّالي:
    sass --watch style.scss:style.css الأمر سيقوم بترجمة Sass إلى CSS فور استشعار تغيير على الملفّ.
    بالطّبع يجب أن تكون Sass مُنصّبة على الجهاز، وذلك بتنصيب كلّ من لغة روبي وجوهرة sass.
    لتنصيب جوهرة sass يُمكن تنفيذ الأمر التّالي:
    gem install sass قد يحتاج الأمر أعلاه إلى صلاحيّات المدير في أنظمة gnu/linux و Mac OS، لذا يجب إضافة كلمة sudo في بداية الأمر:
    sudo gem install sass  
  4. إجابة عبدالهادي الديوري سؤال في كيف أحصل على أرقام جوال وايملات بهدف التسويق؟ كانت الإجابة المقبولة   
    بالنّسبة للطرق المُتبعة للحصول على عناوين البريد الإلكتروني بغرض التّرويج فأكثر طريقة شائعة هي بتقديم مُحتوى مُفيد حصري لمن اشترك بقائمتك البريديّة، مثلا اكتب كتابا صغيرًا أو وظّف كاتبا مُستقلا ليكتبه لك، وأرسله لزوار موقعك مجّانا عبر البريد الإلكتروني، كل ما عليك فعله هو طلب العنوان من الزّائر، وفور الحصول على العنوان يُمكنك إرسال الكتاب إليه عبر أحد خدمات البريد مثل  mailerlite أو MailChimp وغيرها.
    صمّم صفحة هبوط لكتابك وركّز على أن تكون أنيقة ومراعيّة لشروط الجودة، وهذه سلسلة من المقالات المُفيدة في هذا الموضوع.
    يُمكن كذلك إنشاء مُدونة مُتعلّقة بالمشروع وعرض إرسال خلاصتها إلى الزوار عبر البريد في كل أسبوع.
    انظر أيضا الجواب على هذا السؤال:

    أمّا بالنّسبة لكيفيّة الحصول على أرقام الهواتف فلا أعلم بطريقة مُحدّدة، لكنّني أقترح اعتماد مبدأ الهدايا، بحيث تُرسل هديّة لكل من يضع رقم هاتفه.
  5. إجابة عبدالهادي الديوري سؤال في ما هو الـCompass في الـSass ؟ كانت الإجابة المقبولة   
    يُعتبر Compass إطار عمل للغة Sass ويُمكّنك من الحصول على الكثير من الدوال المُساعدة للتعامل مع Sass بشكل أفضل، ويُمكّنك كذلك من تحزيم تنسيقاتك على شكل مكتبة صغيرة مثل Bootstrap.
    يُمكنك أن تُشبه Compass للغة Sass بإطار Rails للغة روبي.
    المصدر
  6. إجابة عبدالهادي الديوري سؤال في ما هو virtual host؟ كانت الإجابة المقبولة   
    تسمح الاستضافة الافتراضيّة بتوفير العديد من أسماء النّطاقات Domain names على خادوم واحد، يُمكن استعمال خوادم الويب لإنشاء مثل هذه الإستضافات، وهي حل جيد لاستضافة العديد من تطبيقات الويب في نفس الخادوم لكنّها قد تكون عائقا في حالة كان عدد الزوار كبيرا.
    يُمكن مثلا أن تقوم باستضافة موقعين على نفس الخادوم بهذه الطّريقة. بحيث يكون لكل موقع اسم نطاق مُختلف. مثلا الموقع الأول عبارة عن مُدونة بسيطة تعتمد على سكربت ووردبريس ونطاقها كالتّالي blog.example.com، بعدها يُمكنك استضافة موقع آخر باسم نطاق مُختلف وليكن موقعا مُعتمدا على سكربت Opencart للمتاجر الإلكترونيّة وليكن اسم نطاقه كالتّالي store.example.com. الاختلاف الجوهري هو أنّ ملفات سكربت ووردبريس متواجدة في مسار مُختلف عن مسار ملفات المتجر.
    مثلا ملفّات سكربت الووردبريس ستكون في المسار التّالي:
    /var/www/site/wordpress أمّا ملفّات سكربت Opencart فستكون في مسار آخر:
    /var/www/site/opencart تُمكّن هذه التّقنية من تقسيم موارد الخادوم على أكثر من تطبيق، ما يعني أنّك قد تجد بعض المشاكل في حالة استعمل أحد التّطبيقات الموارد بشكل كبير.
    مُلاحظة: يُمكن لاسم النّطاق أن لا يكون فرعيا، أي أنّ blog.example.com يُمكن أن يكون blogexample.com كذلك.
  7. إجابة عبدالهادي الديوري سؤال في كيف أحل هذه المشكلة في pip على نظام ويندوز؟ كانت الإجابة المقبولة   
    مرحبا،
    المشكلة تحدث لأنّ pip لا يمتلك صلاحيات للوصول إلى ملفّات النّظام، لذلك عليك فتح برنامج cmd كمُدير النّظام.
    ادخل إلى قائمة "ابدأ" واكتب cmd، انقر على الزرّ الأيمن للفأرة واختر " Open as administrator". بعدها سيعمل pip بشكل جيّد.
     
  8. إجابة عبدالهادي الديوري سؤال في كيف أدرج قواعد البيانات geonames إلى موقع وِب ؟ كانت الإجابة المقبولة   
    هناك العديد من المكتبات المتوفّرة لهذا الأمر، اختر واحدة حسب إطار العمل الذي تعمل به:
    Pear PHP Zend Framework PHP SOLMETRA Maps (PHP) Yii (PHP)
  9. إجابة عبدالهادي الديوري سؤال في كيفية تركيب قالب مدفوع على موقعي؟ كانت الإجابة المقبولة   
    وعليكم السّلام.
    صديقي، الرّسالة تعني بأنّه يتوجّب عليك فتح الملفّ  php.ini والبحث عن الجملة التّالية:
    max_execution_time ثمّ عدّلها ليكون كالتّالي:
    ini_set('max_execution_time', 0); إذا لم يكن السّطر موجودا مُسبقا فأضفه.
    هذا ما فهمته من الرّسالة، ومن المُفضّل أن تتصل بمن لديه خبرة بلغة php ليُساعدك على تركيب القالب، ويُمكنك كذلك توظيف أحدهم على موقع مُستقل.
  10. إجابة عبدالهادي الديوري سؤال في مشكلة الـ view لا تعمل عند عمل route لها في الجافاسكربت؟ كانت الإجابة المقبولة   
    أين المُتحكّمان HomeCtrl و ResumeCtrl
    أعتقد بأنّ هذا ما ينقصك.
    أضف المُتحكمات إلى تطبيقك.
    app.controller('HomeCtrl',function($scope){ }); app.controller('ResumeCtrl',function($scope){ }); ضعها تحت الـRoute
     
  11. إجابة عبدالهادي الديوري سؤال في هل توجد حماية من ddos attack إذا إشتريت Dedicated server من شركة godaddy؟ كانت الإجابة المقبولة   
    وعليكم السّلام ورحمة الله وبركاته.
    لا أعلم كثيرا حول هذا النّوع من الخوادم، لكن يبدو لي بأنّها خطّة جيّدة مبدئيّا للحماية.
    أعتقد بأنّه من الأفضل استخدام خدمات مثل CloudFlare (إن لم تكن تستخدمها مُسبقا) كإجراء احتياطي لحمايته من الهجمات.
     
    لكن عليك أن تعلم بأنّ الحماية نسبيّة، ولا يُمكن التأكّد من أنّ الخادم محمي بشكل كامل، لذا من المُستحبّ أن تستشير خبيرا في الحماية.
     
  12. إجابة عبدالهادي الديوري سؤال في كيف أحصل على Serial المستخدم [PHP]؟ كانت الإجابة المقبولة   
    الطّريقة الأنجح لمنع مُستخدم من الوصول إلى الموقع هي الحظر عن طريق الـIP.
    ثمّ إنّ الحظر لا يعتبر دائما الحل الأمثل، إذ يجب عليك أن تتأكّد من حماية الموقع جيّدا، وذلك عن طريق الالمام بمُختلف الثّغرات الشائعة مثل XSS و Man-in-the-middle. وفرض قيود مُعيّنة على المُستخدمين كالتّسجيل قبل انشاء المُحتوى وما إلى ذلك.
  13. إجابة عبدالهادي الديوري سؤال في لدي مشكلة مع تصميم وبناء المواقع من الصفر فما هو الحل؟؟ كانت الإجابة المقبولة   
    مرحبا بك يا صديقي.

    من واقع تجربتي مع تطوير تطبيقات الويب، أستطيع أن أفهم وضعيّتك بشكل واضح، إذ مررتُ من قبل بما تمرّ به الآن، ونصيحتي لك هي أن تتعلّم بالتّطبيق وأن تتوقّف عن مُشاهدة وقراءة الدّروس دون تطبيق، فحضور دورة لبناء تطبيق مُتكامل من الصّفر أمر لا يكفي لكي تُصبح مُطوّرا، حتى ولو كنت تفهم شيفرات HTML و CSS عندما تفحص عنصر المواقع، إذا لم تفتح المُحرّر المُفضّل لديك وتبدأ بكتابة الشيفرة مع المُدرّب فتأكّد بأنّك لن تستفيد شيئا.
    قبل قراءة ما يلي، سأنصحك بأن تبدأ بشيء صغير بلغة HTML ونسّقه بلغة CSS وبعدها أضف تعديلات شيئا فشيئا.
    الآن، إذا أردت فعلا بناء تطبيقات الويب من الصّفر فعليك اتّباع العديد من الخطوات، بحيث ينمو تطبيقك خطوة خطوة، لذا لا تتوقّع أن تبني موقع تويتر في أوّل شهر من التّعلم، عليك أن تكون صبورا عند تنفيذ كل خطوة ولا تنتقل إلى الخُطوة المواليّة إلا بعد أن تتأكّد من أنّك أنهيت الخطوة التي تعمل عليها، وإليك الخطوات التي يجب عليك اتّباعها مع التّقنيات واللغات التي ستُساعدك لإنهاء الخطوة والانتقال إلى الأخرى:
    تصميم الشّكل البدئي للموقع: هنا لن تحتاج سوى لورقة وقلم، ارسم شكل الموقع الذي ترغب في بنائه لكي تمتلك فكرة أفضل، يُمكنك كذلك أن تستعين ببرنامج للتّصميم ولكنّ الأمر يبقى اختياريا. تصميم قاعدة البيانات: هنا ستحتاج كذلك إلى ورقة وقلم فقط، اكتب وارسم خطاطات لكيفيّة تصرّف البيانات في التّطبيق. مثلا لنقل بأنّك تبني مُدوّنة بسيطة، ستكون مُحتويات الورقة شيئا كالتالي: المُستخدم يُدخل اسمه وكلمة مروره--> يعني بأنّ لدينا جدولا للمُستخدمين يحتوي على عمودين "الاسم" و"كلمة المرور". بعدها ينشئ المُستخدم تدوينة جديدة  مع عنوان مُناسب--> ما يعني بأنّنا نمتلك جدولا للتدوينات، مع عمودين "المُحتوى" و"العنوان".  تهيئ قاعدة البيانات، هنا ستحتاج إما للغة SQL أو تعلّم كيفيّة استخدام ORM خاص باللغة التي تبني بها تطبيقك للتعامل مع قاعدة البيانات بسهولة، المهم بأنّك ستحتاج إلى تعلمّ مبادئ قواعد البيانات، ولا تقلق فالأمر بسيط جدا ويتطلب القليل من الصبر والاجتهاد. المرحلة الأخيرة هي العمل الفعلي على التّطوير، هنا ستحتاج إلى تعلّم لغة Php أو ما شابهها. وستحتاج إلى HTML و CSS لتنسيق الموقع. عليك أن تبدأ بشيء صغير جدا، لا تبدأ في التّفكير ببناء تطبيق بعشرات الميّزات، إذا بنيت موقعا يُمكّن المُستخدمين من نشر مقالاتهم فقط فهذا جيد، لا تشغل بالك بإضافة ميّزة التّعليقات والتّقييم وغيرها… فكلّها خطوات مُتقدّمة يجب عليك ألا تبدأ بها إلا بعد أن تنتهي من الخطوات الأولى. 
    تذكّر كذلك بأنّك لا تعرف كلّ شيء وعاجلا أم آجلا ستجد نفسك تقع في الأخطاء. لا تخجل من السؤال، وابحث عن الطّريقة الصحيحة للقيام بالأمر بالاستعانة بمُحرّك بحث.
    تذكّر بأنّ البداية صعبة، ولكنّ الأسوأ هو أن لا تبدأ أبدا
  14. إجابة عبدالهادي الديوري سؤال في أنا مبتدئ، كيف يُمكن أن أقوم بإنشاء مواقع إلكترونية بلغة بايثون من الصفر؟ كانت الإجابة المقبولة   
    عليك أولا أن تعرف بأنّ المواقع الإلكترونية تعتمد على العديد من التّقنيات واللغات وأهم لغة لتطوير الويب هي لغة HTML الهيكلية وهي بسيطة جدا، ولن يأخذ منك تعلمها الكثير من الوقت، ولغة CSS مُهمة كذلك لتنسيق الموقع وجعل منظره جذابا، ثمّ لغة Javascript لإضافة المزيد من التفاعل لموقعك. أمّا لغات الواجهة الخلفية مثل لغة php و ruby و python فهي لغات تُستعمل للتعامل مع قواعد البيانات وذلك بمُساعدة رئيسية من أطر العمل المُتوفّرة لكل لغة، أقصد بالتعامل مع قواعد البيانات إدخال البيانات إلى قاعدة البيانات (اسم المُستخدم وكلمة مروره مثلا) التّحقق منها وحذفها أو تعديلها وأمور أخرى تتعلق بهذه المبادئ.
    لذلك فإن أردت أن تبدأ بتعلم التّقنيات اللازمة لإنشاء مواقع إلكترونية فعليك بتعلم التّالي:
    لغة HTML5 لغة CSS3 لغة Javascript لغة بايثون. إطار عمل للويب (مثل إطار Django).
    كيفيّة التعامل مع قواعد البيانات باستعلامات SQL.
    يُمكن كذلك أن تُضيف تقنيات أخرى لتعلماتك مثل تقنية Ajax ومُختلف مكتبات لغة Javascript (مثل Jquery، EmberJS، AngularJS، ReactJS …).
    قد يبدو لك الأمر مُعقدا، ولكن صدقني أصعب جزء هو البداية وأسوأ شيء قد تواجهه هو عدم الاهتمام بالتّعلم، فحالما تتعلم لغة HTML سيبدو لك الأمر بسيطا وستنتقل إلى لغة CSS وبعدها يزيد مستوى التّعقيد درجة درجة عندما تنتقل إلى تعلم لغة Javascript ستتعلم أسس البرمجة (هذا إن لم تكن قد تعلمت لغة بايثون). إذا تعلمت أحد لغات البرمجة ستجد نفسك قادرا على تعلم اللغة التالية بسهولة ويُسر. وتذكر بأنّك ستواجه عقبات لا تعد ولا تحصى والمُهم ألا تستسلم لهذه العقبات بل عليك أن تعتمد على مُحركات البحث لإيجاد حلول المشاكل التي تواجهك.
  15. إجابة عبدالهادي الديوري سؤال في كشركة ناشئة في بداياتها من هو الافضل مستثمر سخي ذو خبرة في السوق ام شريك من اصدقائي يمكنه المساعده؟؟ كانت الإجابة المقبولة   
    صديقي الشريك والمستثمر  يؤديان دور تحسين المنتج، ولا يُمكن لأحد بأن يجيبك باختيار المُستثمر أو باختيار الشريك، ما سأقدمه لك عبارة عن طريقة قياس مدى كفاءة كل من الشريك والمُستثمر، وقد تُساعدك على معرفة أيهما تختار.
    الشريك: قس الشريك الأفضل بمدى إيمانه بالفكرة، ومدى الدعم الذي يُقدّمه لك، إلى أي حد يستطيع أن يعمل معك؟ هل يُمكنه أن يعمل على المشروع بقدر ما تعمل عليه أنت؟ أم أنّه لا يريد سوى المال السريع دون بذل أي مجهود؟ كما يجب عليك أن تراجع مهاراته لترى إن كانت تلائم مُتطلبات تحسين المنتج، والأسئلة السابقة ستُساعدك على النظر إلى شريكك بعين ناقدة، وستُساعدك على إختيار الشريك الأنسب فإن لم تجد الشّريك المناسب فيُمكنك أن تنظر إلى خيار المُستثمرين، وهذا يجرنا إلى نقطة المُستثمر.
    المُستثمر: دائما ما يكون المُستثمر الذي يدعم الفكرة بقوة الأفضل، كما يُمكن أن تُلاحظ عليه بأنّه يستطيع أن يقوم بتزويدك بأي مبلغ تريد شريطة أن يتأكد من أنّ الفكرة ستنجح. وهناك المُستثمر الذي يكون مترددا وخائفا، ويطرح العديد من الأسئلة حول فشل الفكرة، وبأنّه غير مُستعد للإستثمار بعد.
     
     
  16. إجابة عبدالهادي الديوري سؤال في هل من الممكن تعديل مربع التعليق جوجل في بلوجر ? كانت الإجابة المقبولة   
    نعم يا صديقي يُمكن أن تقوم بتعديل مربع التعليقات وتخصيصه بـ CSS كما تشاء، أنصحك باستعمال خاصيّة فحص العنصر في مُتصفّحك للحصول على ID العنصر أو على فئته (Class) ومن ثم البحث على بلوجر عن الID وتغيير خصائصه، الفيديو التّالي مثال على استخدام طريقة فحص العنصر:
     
  17. إجابة عبدالهادي الديوري سؤال في كيف أضيف صوة إلى مشروعي في إطار Sinatra كانت الإجابة المقبولة   
    وعليكم السّلام ورحمة الله وبركاته. مرحبا بك يا صديقي.
    يُمكنك أن تعرض الصور على مشروع Sinatra بوضعها داخل مجلّد public إذا لم يكن موجودا فأنشئه داخل مجلّد المشروع. لنقل بأنّك أنشأت المُجلّد ووضعت داخله صورة باسم image.jpg يُمكنك عرض هذه الصورة في ملف erb داخل مجلّد views بالطّريقة التّالية:
    <img src='image.jpg' /> عند إكمال هذه الخطوة ستُعرض لك الصورة دون مشاكل
  18. إجابة عبدالهادي الديوري سؤال في هل يوجد أمر لمعرفة المساحة المتبقية على القرص على لينكس؟ كانت الإجابة المقبولة   
    نعم يوجد أمر df ويُمكنك استخدامه كالتالي:
    df -h مرّرنا -h لكي تكون المُخرجات سهلة القراءة

    لاحظ أن Avail تعني المساحة المتبقّية
     Size  : تعني المساحة الكليّة
    Used: المساحة المُستخدمة
    يُمكنك كذلك تمرير /dev/sdaX لتحديد القرص:
    df -h /dev/sda7وكذلك يُمكنك أن تُمرّر مسار القرص:
    df -h /home 
×
×
  • أضف...