-
المساهمات
6975 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
218
إجابات الأسئلة
-
إجابة Wael Aljamal سؤال في هل أستطيع التسجيل باستخدام حسابين الكترونيين في أكاديمية حسوب؟ كانت الإجابة المقبولة
سيتم تسجيل الدورة المشتراة لطالب واحد حسب الحساب الذي قام بالتسجيل به، مع العلم نفس الحساب يمكن أن يرتبط به أكثر من بريد الكتروني لتسجيل الدخول.
يمكن إضافة أكثر من بريد إلكتروني من رابط مدير حسابات حسوب: accounts.hsoub.com/settings/emails
في صفحة البريد الإلكتروني:
تستطيع من هذه الصفحة تحديد بريدك الإلكتروني الأساسي وكذلك إضافة أي عناوين ترغب باستخدامها عند تسجيل الدخول لحسابك أو حذفها.
-
إجابة Wael Aljamal سؤال في كيف تصلني شهادة الاتمام كانت الإجابة المقبولة
شهادة أكاديمية حسوب تتوفر على شكلين:
شهادة الكترونية لها رابط فريد، مرفوعة على استضافة تابعة للأكاديمية أي رابطها يحوي كلمة academy.hsoub
شهادة ورقية يمكن طلبها، ويتم إرسالها لعنوان الطالب (ماعدا الدول التي فيها حروب) أو عدم توفر طرف الشحن
الشهادة الاكترونية تعطيك حيوية ويمكن إرفاق الرابط في أي تفدم على وظيفة..
إقرأ الجزء:
ماذا يعني شهادة معتمدة من أكاديمية حسوب؟
من الرابط: أسئلة شائعة، أكاديمية حسوب
يمكن قراءة الإجابة:
معلومات الامتحان:
-
إجابة Wael Aljamal سؤال في مشكلة عرض تحديثات في موقعي في وورد برس كانت الإجابة المقبولة
سبب هذه المشكلة هي أن ووردبريس يقوم بعمل caching لأغلب الملفات مثل CSS والصور..
لذلك حاول إطفاء جميع هذه الإضافات خلال عملية التطوير، و إن موضوع أن تأخذ وقتاً هو شيء طبيعي في أغلب المواقع.
قم بإعادة تغعيل الكاش بعد إنتهائك من التعديلات
-
إجابة Wael Aljamal سؤال في قراءة قيم من حقل عند حدث تغيير قيمته change باستعمال jquery كانت الإجابة المقبولة
الطريقة التي شرحتها هي التي تعمل مع change.
*****
أما في حالتك، تريدين القيمة النهائية لاختيار المستخدم، فلا حاجة ل change .
نقرأها بطريقة عادية !
$('#form1').submit(function (e) { e.preventDefault(); var num1 = $('#text1').val(); var num2 = $('#text2').val(); if (num1 != null && num2 != null) { $('#demo1').html(num1); $('#demo2').html(num2); // select var nam1 = $('#sel1 option:selected'); $('#table_d').html(nam1.text()); $("#myModal").modal('hide'); } });
وضعتها ضمن الشرط لأنه يجب إدخال أرقام و يمكنك وضع شروط إضافية
-
إجابة Wael Aljamal سؤال في مشكلة في اندرويد arctic fox يطلع No signature of method: build_9r4qz9atboksvdhi4foqls7ni.android() is applicable for argument types كانت الإجابة المقبولة
حاولي حذف هذه الجزئية مؤقتا:
javaCompileOptions { annotationProcessorOptions { includeCompileClasspath true } } }
-
إجابة Wael Aljamal سؤال في Android ظهر الخطأ Could not find com.twitter.sdk.android:twitter-core:3.0.0 كانت الإجابة المقبولة
حاول تعديل الشطر التالي
dependencies { classpath 'com.android.tools.build:gradle:3.3.0' ^^^^^^^^^^^^^^ } أو 3.1.1
مع تحديث إصدار kotlin plugin
وأضف google في buildscript
buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }
يمكنك محاولة إضافة maven
buildscript { repositories { maven { url 'https://jitpack.io' } mavenCentral() maven { url "https://maven.google.com" } } dependencies { classpath 'com.android.tools.build:gradle:3.1.0' } }
-
إجابة Wael Aljamal سؤال في لا أستطيع استخدام toLocaleString مع متغير input جلبته عن طريق get element by id كانت الإجابة المقبولة
هذا لأن نوع المتغير test ليس Number حاول استخدام parseInt
var test = parseInt (document.getElementById("test").value) الآن ستتمكن من تطبيق
demo.innerHTML = test.toLocaleString();
-
إجابة Wael Aljamal سؤال في كيفية إضافة فواصل بين كل 3 أرقام في الأعداد الكبيرة في الجافا سكريبت كانت الإجابة المقبولة
يمكننا الاستفادة من الدالة Number.prototype.toLocaleString وهي موجودة built-in في لغة جافاسكربت لطباعة فاصلة بين كل 3 منازل عشري للعدد
مثال:
var n = 21978444.345; console.log( n.toLocaleString() ); // "21,978,444.345"
-
إجابة Wael Aljamal سؤال في مشكلة في اندرويد arctic fox يطلع Gradle's dependency cache seems to be corrupt or out of sync كانت الإجابة المقبولة
يمكنك حذف مجلد gradle في المشروع و إعادة تحميله، سيتم ذلك تلقائيا في أندرويد استديو عند عمل المزامنة.
و تأكدي في gradle wrapper.properties من أن بروتوكول الاتصال هو http بدل https في رابط تحميل gradle
-
إجابة Wael Aljamal سؤال في حدوث خطأ عند استخراج تطبيق android في Phone Auth Provider verify Phone Number كانت الإجابة المقبولة
حاول ترقية المكتبة التالية:
implementation "androidx.browser:browser:1.3.0 implementation 'com.google.firebase:firebase-auth:20.0.1' ثم توجه إلى google cloud console ثم مشروعك ثم APIs & Services ثم Dashboard وقم بتفعيل android device verification ثم أضف المفاتيح Add SHA-1 and SHA 256 in firebase project settings.(debug and release both)
ثم قم بتحميل و بتعديل ملف google-services.json في مشروعك ثم قم بالتجريب
و أطلعنا على المستجدات من فضلك.
-
إجابة Wael Aljamal سؤال في مشكلة في بناء تطبيق ال Flutter لعدم وجود مفتاح Failed to create keystore كانت الإجابة المقبولة
بل سنتابع إيجاد حل للمشكلة..
يوجد أكثر من أمر لإنشاء keyStore
$ keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000 على كل حال يمكنك من أندرويد استديو إنشائه من شريط الأدوات build ثم sign app
هذه الخطوة مشروحة في التوثيق الرسمي من هنا: android app-signing
من Build > Generate Signed Bundle/APK. اختر Generate Signed Bundle or APK dialog, ثم اختر select Android App Bundle or APK and click Next. إنشاء مفتاح Below the field for Key store path, click Create new. ثم أرفق بياناتك
-
إجابة Wael Aljamal سؤال في تثبيت التبويبات الخاصة ب Design و Console في بيئة eclipse كانت الإجابة المقبولة
يقوم eclipse بعمل إغلاق تلقائي للتبويبات و يمكن منع حدوث ذلم من خلال:
ننقر بالزر الأيمن للفأرة في محرر الأكواد (بجانب الكود مثلا) نختار preference ثم تظهر القائمة كما في الصورة و نزيل تحديد الخيار close editors automaticly نحفظ التعديلات
-
إجابة Wael Aljamal سؤال في من أين سأحصل على ملفات ovpn Configs وهل يمكنني إنشائها بنفسي كانت الإجابة المقبولة
نعم تحديث الملف في السيرفؤ هو الحل و ليس تحديث البرنامج كل يوم.
خدمات open VPN متغيرة و ليست ثابتة، فوجود حل على مستوى التكبيق غير موجود على الأغلب.
تابع البحث لربما تجد خدمة توفر مصارد online لجلب مبف التهيئة يتم ربطها بحساب شخصي و محدثة من قبل المزود بشكل دائم
-
إجابة Wael Aljamal سؤال في يظهر لي الخطأ Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY. عند الاتصال بقاعدة البيانات كانت الإجابة المقبولة
يبدو ان المشكلة في استدعاء الدالة last في resultSet.last ويبدو انك لم تقومي بتخزين القيمة أو الاستفادة منها، حاولي تعليق هذا للسطر وإعادة تجريب البرنامج.
أرجو إعلامي إن نجح الأمر.
-
إجابة Wael Aljamal سؤال في خطأ في إدخال القيم الى الحقول (الكتابة في الحقول) Text Field في واجهة مشروع جافا كانت الإجابة المقبولة
يمكن أن تكون هنالك أكثر من سبب للمشكلة،
تضارب في عمل مكتبات تصميم الواجهات مثل مكتبتي swing + awt ممكن سببه استدعاء للتهيئة أكتر من مرة مثلا initialize إيقاف قبول تعديل قيمة الحقل بمنع التعديل بتمرير false للدالة setEditable حاولي تعليق action listener فقد يوجد شيفرة تقوم بتغريف الحقول أو حذفها أو عدم قبول المدخلات. تم في الشيفرة وضع
setEditable(false) مرتين في 2551 و 2723 أرجو السماح بالتعديل بتمرير true أو تعليق السطر //
-
إجابة Wael Aljamal سؤال في كيفية إستخدام order_by أكثر من مرة بإستخدام SQLAlchemy في فلاسك Flask؟ كانت الإجابة المقبولة
إن الدالة order_by تقبل تمرير أكثر من وسيط بالترتيب الذي نريد عمل ترتيب النتائج عليه، فيكون أول وسيط هو عدد الإعجابات و الثاني هو تاريخ تاريخ الإنشاء ليصبح الاستعلام
User.query.order_by( User.likes.desc(), User.date_created.desc() ).limit(10).all() كما يمكن استعمال الدوال _and و _or مثلا:
# تضمين from sqlalchemy import and_, or_ #الاستعلام User.query.order_by( and_(User.likes.desc(), User.date_created.desc()) ^^^ ^^^^^ ).all() وحل آخر هو تمرير عبارة الترتريب كنص للاستعلام عن طريق دالة text كالتالي:
from sqlalchemy.sql import text User.query.order_by( text("likes desc, date_created desc") ).limit(10).all()
-
إجابة Wael Aljamal سؤال في عدم تحديث قيمة متغير من نوع String تم وضعه في السرفر بعد جلبه إلى تطبيق أندرويد كانت الإجابة المقبولة
هل يمكنك إضافة جزء الكود مكات تعريف myString و كيف تقوم باستدعاء getStringFromJson
حاول
myString = new String (stringValue); ربما سبب المشكلة هو عمل تخزين مؤقت caching يحفظ القيمة السابقة لناتج الاتصال ولا يعمل تحديث.
بعد استلام الطلبية ضع في الدالة في أول سطر منها التعليمة التالية
requestQueue.getCache().clear(); لنحذف ذاكرة التخزين المؤقت من Volley @Med Foud
-
إجابة Wael Aljamal سؤال في مشكلة في عمل استعلام لقاعدة البيانات SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using password: YES) كانت الإجابة المقبولة
ضمن إعدادات المشروع يتم استخدام forge كمستخدم user ضمن قاعدة البيانات لتنفيذ الاستعلامات (مثل بناء قاعدة البيانات أو تعديلها أو عمليات التهجير)
ربما هذا المستخدم غير موجود لديك في قاعدة البيانات المحلية، ولكي تستخدم مستخدم له صلاحيات،
يمكن استعمال المستخدم الجذر root لعمل اللازم في مرحلة التطوير لديك. وهذا يتطلب تعديل إعدادات الاتصال بقاعدة البيانات في المشروع (اسم المستخدم و كلمة السر الخاصة به بقاعدة البيانات) أو توجه لمدير قاعدة البيانات لديك وقم بإنشاء مستخدم جديد لقاعدة البيانات الخاصة بالمشروع باسم forge واعطه صلاحيات كاملة لتستطيع عمل استعلامات من خلاله. قد تجد اسم المستخدم في ملفات المشروع لديك في الملف config/database.php
'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'forge'), // اسم قاعدة البيانات 'username' => env('DB_USERNAME', 'forge'), // هنا ضع root 'password' => env('DB_PASSWORD', ''), // اتركها فارغة 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, ], ثم نفذ الأمر
php artisan config:cache
-
إجابة Wael Aljamal سؤال في قراءة دخل المستخدم من حقل إدخال في مكتبة Tkinter كانت الإجابة المقبولة
ضمن الواجهة، نقوم بتعريف حقل إدخال يدعى TEXT FIELD وفي Tkinter يوجد Entry widget.
يمكن تعريف مثال بسيط كالتالي:
from Tkinter import * root = Tk() root.title('my application') e = Entry(root) // تعريف الحقل e.pack() e.focus_set() ثم لقراء القيمة المدخلة، نستخدم الدالة get
def printUserText(): global e // حتى نصل لحقل الإدخال string = e.get() // جلب النص print (string) // طباعة وفي حال أردت وضع زر للاستجابة لحدث النقر سيكون كالتالي
b = Button(root,text='print my text',command=printtext) b.pack(side='bottom') // موضع الزر root.mainloop() // تشغيل
-
إجابة Wael Aljamal سؤال في ما الخوارزمية التي يمكن أن اتعلمها ثم اطبق عليها بمشروع قائمة المهام كانت الإجابة المقبولة
عادة تطبيق المهام هو امر بسيط، حيث تكوتدت القائمة عبارة عن مصفوفة أغراض وكل غرض يمثل مهمة معينة ،و المهمة لها رقم و عنوان و تفاصيل و تاريخ إنجاز و أي بيانات تريدها..
المطلوب منك لبناء تطبيق ملاحظات جافاسكربت في المتصفح هو خوارزمية البحث الخطي Linear Search تفيدك في تعديل و حذف مهكة ضمن المصفوقة بعد البحث عن المهمة التي يريد التعديل عليها المستخدم، يمكنك البدء بهذه الخوارزمية و تدعى أيضا Brute Force.
-
إجابة Wael Aljamal سؤال في كيفية فتح ملف باستخدام دالة ()open في بايثون داخل مفكرة جوبيتار Jupyter Notebook كانت الإجابة المقبولة
يتوجب وضع المسار المطلق absolute path للملف المراد التعامل معه، يمكنك نسخ كامل مسار الملف input file من خصائصه أو من مستعرض الملفات. و نضع المسار الكامل مع اسم الملف في دالة open مكان استخدامك لاسم الملف
-
إجابة Wael Aljamal سؤال في تعلم تصميم الواجهات الرسومية بلغة جافا كانت الإجابة المقبولة
إن Java Swing هي المكتبة الرسومية الأقدم في مجال تصميم واجهات البرامج في لغة جافا، وتملك خزينة من المكونات أكثر أي المكتبة البرمجية الخاصة بها أكبر وتحوي الكثير من العناصر و UI components، بينما JavaFX هي الأحدث و تحوي مكونات أيضا و تدعم MVC وهي أقرب ل internet application وتفيد في المحمولية Portapility أي قابلة للعمل على أنظمة تشغيل أكثر و بتوافق أفضل، كما تدعم CSS و animation وأكثر حداثة.
JavaFX هي الأفضل. يوجد عدة مقالات تعلم استخدام JavaFX ضمن الأكاديمية:
-
إجابة Wael Aljamal سؤال في ماهو الفرق بين استخدام الأوامر DROB و DELETE في SQL كانت الإجابة المقبولة
التعليمة البرمجية DELETE تنفذ استعلام حذف على الجدول ويمكن تمرير شرط كما في الاستعلام في مثالك حيث يحذف المستخدم رقم 1، ويمكن من خلالها حذف سجل أو أكثر مرة واحدة حسب السجلات التي تحقق الشرط.
مثل حذف مجموعة المستخدمين الذين رقمهم أصغر من 10:
WHERE id < 10; أما تعليمة DROP تقوم بهدم الجدول وحذف كل محتوياته دفعة واحدة، و الشرط
IF EXISTS موجود لتجنب حدوث خطأ وتوقف البرنامج في حال كان الجدول محذوف من قبل.
موسوعة حسوب: الحذف من جدول SQL
-
إجابة Wael Aljamal سؤال في ما هي Access Modifiers في لغة جافا كانت الإجابة المقبولة
هذا السؤال مجاب عليه من قبل:
-
إجابة Wael Aljamal سؤال في احضار من قاعدة البيانات أكثر وقت تكثر فيه عمليات الشراء كانت الإجابة المقبولة
يمكننا بناء دالة تجلب عدد المنتجات المباع ضمن مجال من الوقت، طبعا يمكنك استدعاء الدالة عدة مرات،
وفي كل مرة تمرر لها مجال مختلف
public function itemsInHour($builder, $from, $to) { return $builder ->withCount(['transactions' => function ($transaction) use ($from, $to) { $transaction ->whereDate('created_at', '>', $from) ->whereDate('created_at', '<', $to); }]) // ->orderBy('transactions_count', 'desc'); } حيث أن:
builder: باني الاستعلام transactions: جدول المناقلات أو المشتريات from تاريخ بدء البحث to تاريخ انتهاء البحث كما يمكن كالتالي:
بمساعدة حزمة Carbon لجلب مشتريات آخر يوم تجميع و ترتيب بتعليمات SQL use Carbon\Carbon; $productsByDay = transactions::where('created_at', '>=', Carbon::now()->subDays(1)) ^^^^^^^^^^^^^^ يوم واحد ->groupBy('date') // تجميع حسب التاريخ ->orderBy('date', 'DESC') ->get([ DB::raw('DATE(created_at) as date'), DB::raw('COUNT(*) as "products"') ])->pluck('products','date')->toArray();