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

E.Nourddine

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

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

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

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

    18

كل منشورات العضو E.Nourddine

  1. في البداية أدرج رابط مكتبة Jquery على صفحتك، ثم في ملف JavaScript الخاص بك ،أضف وظيفة يمكن العنص من السحب والإفلات, وهذا مثال عملي من موقع Jquery : <script> $(function() { $( "#draggable" ).draggable(); $( "#droppable" ).droppable({ drop: function( event, ui ) { $( this ) .addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped!" ); } }); }); </script>لمشاهدة المثال مباشرة، انظر زرّ الرابط
  2. نعم الأمر متعلق بإضافة Gem تدعى pdf-reader ومثلها مثل أي إضافة أخرى تثبتها وتستعملها، وهذه طريقة توضيحية للإستعمال: def count_words_in_pdf_file(filepath) #عرفتا هتا الدالة التي تقرأ الملف والتي تأخذ كقيمة مسار الملف io = filepath.start_with?('http') ? open(filepath) : filepath #وضع الملف في متغير reader = PDF::Reader.new(io) #قراءة الملف total_count = 0 if reader #التأكد من قراءة الملف reader.pages.each do |page| # القراءة صفحة بصفحة total_count += count_words_in_text(page.text) end end total_count end
  3. أولا لناقش الأمر منطقيا في عدة نقاط: المستخدم يُدخل تاريخ ازدياده.نأخذ تاريخ اليوم حتي نتمكن من معرفة بأي تاريخ نحن.نقوم بعملية طرح تاريخ الازدياد من تاريخ اليوم بالسنوات.مع التأكد من أن تاريخ اليوم أكبر من تاريخ الازدياد، لأنه ممكن ببساطة إدراج تاريخ مستقبلي، وذلك من خلال Datetime.إليك الكود: DateTime today = DateTime.Today;'' جلب تاريخ اليوم int age = today.Year - bday.Year;'' عماية الطرح if (bday > today.AddYears(-age)) age--;'' هنا التأكد من عدم إظهار قيمة العمر سالبة
  4. في البرمجة على بيئة NET. هناك نوعان من Controls، نوع خاص بـ Winforms أي الخاصة بتطبيقات سطح المكتب، والثاني خاص بـ Webforms أي تطبيقات الويب. Winforms : MozBarDockPanel Suite"Ribbon" Style ControlsWinForms Google Earth Plugin LibraryAnimation Loading CircleObject ListViewAdvanced TreeViewWebforms : AJAX DataGridDevExpress ControlsAjax Control KitAnimation Loading CircleiTextSharpVarious FileUpload Controlsهناك Controls أخرى متوفرة في الرابط
  5. عليك بالأمر التالي في الطرفية: git rev-list --all | xargs -n1 git ls-tree --full-name -r --name-only | sort -u يمكنك هذا الأمر من سرد جميع Commits التي أنجزتها في جميع الملفات، وقد يأخذ الأمر الكثير من الوقت للحصول على اللائحة كاملة. والحل الأمثل هو استخدام libgit2 لأنها تفعل نفس المهمة لكن في وقت أقل، ستجدها في موقع github -الرابط بالأسفل-، وهي سريعة بالمقارنة مع الأمر الأول . المصدر
  6. من خلال nm-applet (أداة تثبت افتراضيا) يمكنك ضبط إعدادات اتصال VPN تلقائيا عند الاتصال بالشبكة، ولفعل ذلك: 1- اضغط في أيقونة الاتصال ثم "...Edit connections". 2- حدد شبكة الاتصال ثم اضغط "...Edit". 3- فعل الخاصية "Automatically connect to CPN When using this connection" ثم حدد VPN المرغوب به. 4- احفظ الإعدادات السابقة. الآن سيُفعل VPN ذاتيا بعد كل إعادة تشغيل أو اتصال بالشبكة.
  7. افتح الطرفية على Ubuntu، وسأفترض أن الملف محمل مسبقاً، وأكتب الأمر التالي لإعطاء الصلاحيات للمستخدم على الملف : chmod +x ~/Downloads/netbeans-8.0.2-linux.sh بعد ذلك: cd ~/Downloads && ./netbeans-8.0.2-linux.sh بعد تأكيد الأمر ستبدأ عملية التثبيت لبرنامج Netbeans وستظهر لك نافذة بتقدم عملية التثبيت. على الجانب وكمعلومة إضافيّة، يمكنك إلغاء التثبيت عن طريق الأمر: ./uninstall.sh المصدر
  8. Git هو أشهر نظام إدارة الإصدارات، حيث يعتبر نقلة نوعية في نظم التحكم أو ما يطلق عليه 'VCS'، وما يميزه هو إدارة التفرعات braches وإعادة دمجها مع بعضها البعض حيث كان هذا الأمر صعبًا للغاية في النُظم القديمة، فـ Git ليس أول نظام إدارة للنُسخ يظهر بهذه الخاصية بل سبقه إليها bikeeper. من مميزات Git السرعة والعمليّة، وأيضا سهولته في عمل فروع متوازية 'branches'و'tags'، لكن الميزة الأهم هي تسهيل الدمج 'merge' بين الفروع. ارتبط استعمال Git المنتشر مع استعمال موقع Github، حيث يوفر الكثير من المزايا المهمة خاصةً للمبرمجين المحترفين، ومشاطرة الآخرين مشاريعهم وأفكارهم البرمجية. من أهم أوامر Git : git add // لإضافة التغيرات المُحدثة git commit -a -m "MESSAGE" // إضافة ماتم تحديثه مع الإرفاق برسالة git push // الدفع بالتغيرات المُحدثة إلى الفرع
  9. عليك فقط بكتابة الأمر التالي في الطرفية، حيث وجب إضافة cached: git rm --cached notes.txtهذا الأمر يمكنك من إزالة الملف دون المساس بالملفات الأساسية ل git الموجودة بـ index . للإطلاع أكثر .
  10. يمكنك استعمال طريقتين : الأولى: استعمال دالة grep $ grep -Po '.*(?=\s+[^\s]+$)' file.txt النتيجة: 1223 1234 1323 ... 2222 1233 1234 1233 ... 3444 0000 5553 3455 ... 2334الطريقة الثانية: باستعمال GNU sed $ sed -r 's/(.*)\s+[^\s]+$/\1/' file.txt النتيجة: 1223 1234 1323 ... 2222 1233 1234 1233 ... 3444 0000 5553 3455 ... 2334المصدر.
  11. يمكنك استعمال الأمر chmod مع إعدادات السماح للمستعمل : chmod g+s <directory> setfacl -d -m g::rwx /<directory> // rwx الإعدادات الإفتراضية setfacl -d -m o::rx /<directory> //إعدادات أخرىويمكننا التأكد من نجاح الأمر باستعمال الأمر: getfacl /<directory>لتكون النتيجة لائحة بالإعدادات التالية : # file: ../<directory>/ # owner: <user> # group: media # flags: -s- user::rwx group::rwx other::r-x default:user::rwx default:group::rwx default:other::r-xالمصدر
  12. الفكرة جيدة وتمّ تطبيقها من قبل، لكن ليس في جميع المجالات، فإذا كان المنتج جديدا وبه فكرة مبتكرة من الجيد أخذ أراء الناس حوله، حتى في البرمجيات المحترفة غالبا نجد نسخة تجريبية - وإن كانت غير مجانية- قصد هذا الهدف. إذا كان منتجك يعرف منافسة قوية في السوق فهذه الفكرة تعد فكرة جيدة، ولكن بعقلانية، أي أنك لن تخرج كميات كبيرة للسوق مجانية بداعي أنك تريد التسويق ومعرفة أراء الزبائن، عليك أن تدرس الموضوع، نقط التوزيع، والفئة المستهدفة... كما يمكنك ربط شراء المنتج بجائزة يتم السحب عليها، وهذه من الأمور التي يلجأ إليها البعض، حتى تكون أداة تحفيزٍ للزبائن.
  13. أسرع طريقة لجمع قائمة بريدية ، هي توفير خدمات على موقعك للعملاء، حيث يمكنهم التسجيل بها: توفير لائحة بأهم المواضيع خلال الأسبوع وإرسالها عبر البريد الإلكتروني.إمكانية تحميل كتيب عبر إرساله لهم.استعمل موقع Linkedin وابحث عن النوعية المرغوب فيها من الأشخاص، ثم بالتدريج ستكوّن قائمة مهمة من العملاء أو الأشخاص المراد ربط علاقات معهم.اجعل العميل هو من يبحث عنك، عن طريق تقديم عروض بأثمنة رمزية، أو هدايا إضافية لخدمة ما، فكما تعلم للهدايا تأثير سحري على الناس وإن كان القيمة رمزية.دليلك الشامل للتسويق عبر القوائم البريدية
  14. نعم إليك الطريقة الأفضل : unless discount.nil? || discount == 0 # أكتب الكود الخاص بك هنا end
  15. لن تحتاج إلى أي إضافة. في البداية انسخ ملف post.php أو page.php الموجود في القالب الحالي - أي المستخدم في موقعك الآن- الموجود في المسار : /wp-content/themes/themename/ //هو اسم القالب themename أعد تسمية الملف المنسوخ حديثا، إلى الاسم الذي تريد بشرط ألا يكون اسم الملف موجود مسبقا. عدّل على الملف، حيث بإمكانك إضافة وظائف أخرى للصفحة حسب حاجتك. الطريقة المختصرة هي الذهاب إلى لوحة التحكم، والابحث عن Pages ثم Add New لإضافة صفحة جديدة, يمكنك تعيين اسم الصفحة وباقي خصائصها. مصدر.
  16. DevOps : هو مصطلح شامل وواسع، يضم العديد من العلوم والمفاهيم، حيث يبرز التعاون الحاصل بين كل من المطورين (Developers) والمُشغلين (IT Staff) قصدَ إكمال عملية تطوير التطبيقات مراعين في ذلك جانب الجودة وسهولة الاستعمال. وقد ارتبط هذا المصطلح بمصطلح آخر ألا وهو الحوسبة السحابية وذلك أن DevOps ترتبط ارتباطا وثيقا بالحوسبة السحابية، أي استخدام الخدمات السحابية من أسس DevOps. وللمعلومة فالحوسبة السحابية وسيلة لتطبيق DevOps في المؤسسات والشركات. مصدر
  17. للعمل بـ php-cgi، فـ Ubuntu تتوفر على هذه الحزمة مسبقا ما عليك سوى تفعيلها بهذه الطريقة : sudo apt-get install php5-cgi libapache2-mod-php5 ولتفعيل خادم apache ليُستخدم مع php-cgi : sudo a2enmod php5-cgi sudo service apache2 restartمصادر للتوسع أكثر : Install and configure Apache and PHP with cgi on Ubuntu or Debian Run PHP Applications under CGI with Apache on Ubuntu 12.04 LTS (Precise Pangolin)
  18. السبب في ظهور المشكل هو أن بعض أقسام القرص الصلب -partitions- بها خلل أو أنها لم تُقسّم بشكل صحيح، مما منع عملية تثبيت Ubuntu، لحل المشكلة: أنشئ جدولًا جديدًا للقرص.أعد تجزئة الأقسام بتهيئة القرص الصلب من جديد، مع إعادة تقسيم القرص الصلب.تثبت Ubuntu .هذا يعني محو جميع ما على القرص من بيانات (لذا سيلزمك أخذ نسخة احتياطية من جميع الملفات اللازمة بواسطة القرص الحيّ قبل البدء).
  19. ليس للأمر علاقة بكثرة الاستعمال، فالتصميم الجميل والأخاذ جميل في مجمله، بعيدا عن حيثيات هل الخط يستخدم بكثرة؟ وهل هو خط جديد أم قديم؟ وإذا ما أمعنت النظر، فمعظم المواقع المشهورة تستخدم خطوط واضحة عند القراءة، بحجم معقول، وألوان مريحة للعين مما يشعر المستخدم بالراحة أثناء التصفح. من الأشياء التي أراها مهمة في هذا الموضوع تناسق وانسجام الخطوط المستعملة وطبيعة المحتوى، أضف إلى ذلك اختيار مقاييس معقولة لحجم الخطوط، عدم اختيار أنواع كثيرة من الخطوط- تحلى بالبساطة والجمالية في تصميمك-. دليل المبتدئين للجمع بين عدة خطوط في التصميم كيف تختار الخط المثالي لمتطلباتك
  20. ()var_dump : وظيفتها عرض وإظهار نوع وقيمة المتغير، ومن الأمور التي يعتادها المبرمجين هي استعمال هذه الدالة للتأكد من قيمة متغير ما, أي للأغراض التجريبية، وفي حالة المصفوفة تُظهر نوع المصفوفة مع عدد القيم قيمها، ونوع كل قيمة بها. ()print_r : تُظهر معلومات حول المتغيّر، نوعه ومحتواه، في حال المصفوفة تظهر المعلومات بشكل أبسط من سابقتها بالنسبة للمستخدم. أمثلة موضحة للفرق، مصفوفة بهل قيم: $obj = (object) array('qualitypoint', 'technologies', 'India');var_dump($obj);نتيجة var_dump: object(stdClass)#1 (3) { [0]=> string(12) "qualitypoint" [1]=> string(12) "technologies" [2]=> string(5) "India" }print_r($obj);نتيجة print_r: stdClass Object ( [0] => qualitypoint [1] => technologies [2] => India ) لمعلومات أكثر راجع الصفحات التالية: 1 2
  21. نستخدم دالة array_walk_recursive المتواجدة في php بهذا الشكل: <?php $test_array = array ( 'bla' => 'blub', 'foo' => 'bar', 'another_array' => array ( 'Hsoub' => 'Academy', ), ); $xml = new SimpleXMLElement('<root/>'); array_walk_recursive($test_array, array ($xml, 'addChild')); print $xml->asXML(); ?>سيكون محتوى ملف XML كالتالي: <?xml version="1.0"?> <root> <blub>bla</blub> <bar>foo</bar> <Hsoub>Academy</Hsoub> </root>لمعرفة المزيد حول الدالة اقرأ في المصدر
  22. هناك خاصية في css3 تدعى filter مع إضافة اسم المتصفح : -webkit-filter //chrome -moz-filter //mozila -ms-filter //IE -o-filter // Operaهذه الخاصية تقبل القيمة grayscale(100%);مع إمكانية تغيير النسبة المئوية، حسب الرغبة في شدة الفلتر. مثال،: .grayscale { -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); filter: url(grayscale.svg); /* Firefox 4+ */ filter: gray; /* IE 6-9 */ }مصادر: 1 2 3
  23. هذه الخاصية هي border -radius و تقبل القيم ب px أو em على الشكل التالي: border-radius: 25px; حيث أن قيمة هذه الخاصية الافتراضية هي 0px. صورة توضيحية عن border-radius: هذا محرر، يُغيّر شكل الزوايا مع تغير قيمة border-radius. المصدر
  24. اليك سيناريو الكود البرمجي، بعد الضغط على الزر سيتم نقل موضع الصفحة من موضعها الحالي إلى موضع حقل النص عن طريق Scroll و دالة animate ليبدو العملية حركية: $("#button").click(function() { $('html, body').animate({ scrollTop: $("#elementtoScrollToID").offset().top }, 2000); });كما يتوجب عليك إضافة مكتبة Jquery إلى ملف html، هذا مثال كامل مجرب: <html> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> <script> $(document).ready(function (){ $("#click").click(function (){ //$(this).animate(function(){ $('html, body').animate({ scrollTop: $("#div1").offset().top }, 2000); //}); }); }); </script> <div id="div1" style="height: 1000px; width 100px"> Test </div> <br/> <div id="div2" style="height: 1000px; width 100px"> Test 2 </div> <button id="click">Click me</button> </html> كما يمكنك الاستفادة من الأمثلة الموجودة في الرابط
  25. هناك طريقتان للحصول على نفس النتيجة عليك بـ: 1- إنشاء طبقة جديدة وملأها بأي لون تريد - حسب ذوقك-.اجعل الطبقة فوق الصورة من حيث الترتيب في نافذة الطبقات.غير من نمط الطبقة-Mode- إلى multiply.اخفظ من قيمة شفافية الطبقة.2- باستعمال الاختصار ctrl+B : مع تفعيل الخاصية Colorize.
×
×
  • أضف...