-
المساهمات
4376 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
30
إجابات الأسئلة
-
إجابة بلال زيادة سؤال في مساعدة بخصوص إظهار وإخفاء حقول قائمة منسدلة php كانت الإجابة المقبولة
يجب فعل ما تريده باستخدام jQuery و يتم بهذا الشكل
<div class="form-group col-lg-2 col-md-2"> <label for="inputState">نوع العميل</label> <select id="inputState" class="form-control"> <option selected>...أختر</option> <option value="citizen"> مواطن</option> <option value="passport"> جواز سفر </option> </select> <select id="first" style="display: none;" class="form-control"> <option selected>...أختر</option> @php $formhandler = include(resource_path('countries/countries.php')); @endphp @foreach ($formhandler['guest_form_types[citizen]'] as $guest_type => $value) <option value=' {{$guest_type}} '>{{$value}}</option> @endforeach </select> // أما أذا كان المختار يحتوي علي كلمة جواز سفر if ( echo '<option selected> </option>' = 'جواز سفر '){ //قم باظهار الحقول التالية للمستخدم echo ' <div id="#input" style="display: none;"> <div class="form-group col-lg-2 col-md-2"> <label for="inputPassword4">رقم جواز السفر</label> <input type="text" name='phone' class="form-control" id="inputPassword4" > </div> <div class="form-group col-lg-2 col-md-2"> <label for="inputAddress">رقم التأشيرة</label> <input type="text" name='city' class="form-control" id="inputAddress"> </div> </div>'; } } @endphp </select> </div> <script> $('#inputState').change(function(){ if($(this).val() == 'citizen'){ // or this.value == 'volvo' $('#first').show(); } if($(this).val() == 'passport'){ $('#input').show(); } }); </script> بحيث يمكنك إنشاء القائمة المنسدلة بهذا الشكل
<select id="inputState" class="form-control"> <option selected>...أختر</option> <option value="citizen"> مواطن</option> <option value="passport"> جواز سفر </option> </select> وعند اختيار أي قيمة يمكنك عرض أي فورم تريده
<script> $('#inputState').change(function(){ if($(this).val() == 'citizen'){ // or this.value == 'volvo' $('#first').show(); } if($(this).val() == 'passport'){ $('#input').show(); } }); </script> عند اختيار مواطن يتم إظهار القائمة المنسدلة التي تحتوي على البلدان , عند اختيار جواز سفر يتم إظهار نموذج الإدخال .
-
إجابة بلال زيادة سؤال في عرض الأرقام 1-30 في حقل من نوع select في Laravel كانت الإجابة المقبولة
الكود الخاص بك به مشكلة صغيرة وهي يجب وضع كل قيمة من while في وسم option كما في الشكل التالي
<div class="form-group col-md-6"> <label for="inputState">نسخة البطاقة</label> <select id="inputState" type='text' class="form-control"> <option selected>...أختر</option> @php $num =1; while($num <= 30){ echo '<option>'; echo $num++; echo '</option>'; } @endphp </select> </div>
-
إجابة بلال زيادة سؤال في هل إدخال بيانات من نوع select في أي فورم يلزم كتابة name لكل حقل كانت الإجابة المقبولة
لا , يحب عليك فقط كتابة اسم الحقل بهذا الشكل
<div class="form-group"> <label for="inputState">كيف تعرفت علي أوتيل</label> <select id="inputState" type='text' class="form-control" name='how_know_us'> <option selected>...أختر</option> <option value="google">جوجل</option> <option value="facebook" >فيس بوك</option> </select> </div> لاحظ بجانب وسم select نكتب اسم الحقل بداخل خاصية name , وفي وسم option نكتب قيمة هذا الحقل بداخل خاصية value و عند إرسال القيمة يتم أخذ القيمة المختارة .
-
إجابة بلال زيادة سؤال في شرح التوجية routing resource كانت الإجابة المقبولة
الأمر ببساطة يتم بهذا الشكل ,
route('photos.index'); لاحظ كتبنا اسم مسار التوجيه و هو photos ثم نقطة ثم اسم الدالة وهي index التي بداخل المتحكم , فمثلا لو أردنا التوجه لصفحة أنشاء صورة فكل ما علينا هو
route('photos.create'); أما لو أردنا استخدام دالة show, update,
route('photos.update', $id); route('photos.update', 1); والأمر كذلك بداخل ملف العرض
{{ route('photos.update', $id) }}
-
إجابة بلال زيادة سؤال في مساعدة بشأن تخطيط جدول في HTML كانت الإجابة المقبولة
هل يمكنك إرفاق إلى أين وصلتي في كتابة الكود لكي نستطيع مساعدتك بشكلٍ أفضل ؟
-
إجابة بلال زيادة سؤال في بناء لعبة على منصة android و iOS كانت الإجابة المقبولة
يمكنك توظيف مستقل يعمل على برمجة هذه اللعبة حسب الأفكار التي تريدها من خلال منصة مستقل و منصة مستقل هي منصة تجمع بين المستقلين و أصحاب المشاريع بحيث يستطيع أصحاب المشاريع من توظيف مستقلين قادرين على تنفيذ أفكارهم و مشاريعهم بكفاءة و احترافية عالية , لذلك يمكنك الاشتراك في موقع مستقل من هنا , ومن ثم يمكنك إضافة مشروع مع كامل الخصائص التي تريدها في اللعبة كاملاً , و من ثم تنتظر عروض المستقلين و تختار أفضل مستقل قد قدم عرض مناسب لك و يمكنك الاطلاع على الملفات الشخصية لكل مستقل قدم عرض على مشروعك و من ثم تختار المستقل الأمثل لتنفيذ مشروعك.
-
إجابة بلال زيادة سؤال في مشكلة ارسال البيانات للقاعدة في الإستضافات المجانية كانت الإجابة المقبولة
المشكلة هذه خاصة بالاستضافات المجانية , فأغلبها تحدث بها هذه المشكلة , الأفضل اللجوء إلى استضافة مدفوعة.
-
إجابة بلال زيادة سؤال في مشكلة عند محاولة جمع عناصر المصفوفة في لغة javascirpt كانت الإجابة المقبولة
هناك عدة مشاكل و هي أولاً يجب إزالة = من السطر التالي
for (let i = 0; i < cart.length; i++) { بحيث متغير i أصغر من عدد عناصر المصفوفة , ومن ثم يجب جمع عناصر المصفوفة , بحيث يجب إضافة اسم المصفوفة المخزنة بها الأعداد كما في السطر التالي
total += cart[i]; فيكون كامل الكود هو
const cart = [1,3,4,5,6]; let total = 0; for (let i = 0; i < cart.length; i++) { total += cart[i]; } console.log(total); والنتيجة سوف تكون عدد
19
-
إجابة بلال زيادة سؤال في الانتقال بين الصفحات في Flutter كانت الإجابة المقبولة
يجب عليك وضع زر عودة في leading أو actions في appbar ثم تعطيه أمر عند الضغط بأن يعود إلى صفحة A بهذا الشكل
appBar: AppBar( actions: [ IconButton( icon: Icon(Icons.back), onPressed: () { Navigator.pushNamed(context, '/a'); }, ), ], ),
-
إجابة بلال زيادة سؤال في ما هي افضل دوره في اكاديمية حسوب كانت الإجابة المقبولة
لا يمكن تحديد أي دورة , فكل الدورات قد تؤهلك إلى الانطلاق في مجال العمل الحر , لذلك هذا الأمر يرجع لك في تحديد أي مسار تريد الانطلاق به سواء , برمجة و تصميم مواقع الويب أو برمجة تطبيقات موبايل, ثم تختار أي دورة تريد الاشتراك بها , ففي مجال برمجة وتصميم مواقع الويب يمكنك الاطلاع على هذه الدورات
https://academy.hsoub.com/learn/front-end-web-development/
https://academy.hsoub.com/learn/javascript-application-development/
https://academy.hsoub.com/learn/php-web-application-development/
و في مجال برمجة تطبيقات الموبايل يمكنك الاطلاع على هذه الدورة
https://academy.hsoub.com/learn/hybrid-mobile-application-development/ , مع العلم أن دورة
تطوير التطبيقات باستخدام لغة JavaScript يوجد بها أقسام لبرمجة تطبيقات للموبايل باستخدام لغة react native , وبعد الانتهاء من الدورة التي اشتركت فيها , يمكنك الانتقال إلى مجال العمل الحر و كسب الأموال من خلال عملك في هذا المجال.
-
إجابة بلال زيادة سؤال في ظهور الصوره قبل انتهاء الاتصال flutter كانت الإجابة المقبولة
ما تفعله خاطئ, يجب عليك إظهار صورة التحميل , أو صورة التي تدل على أن البيانات يتم جلبها في FutureBuilder , بحيث تتحقق من وصول البيانات باستخدام snapshot.hasData بهذه الطريقة
return snapshot.hasData ? _build(context,snapshot.data) : Container(); بحيث إذا لا توجد بيانات يمكنك تغيير Container إلى الصورة التي تستخدمها أو إلى
CircularProgressIndicator() فتكون FutureBuilder بهذا الشكل كاملاً
child: FutureBuilder( future: future, builder: (BuildContext context, AsyncSnapshot snapshot) { switch (snapshot.connectionState) { case ConnectionState.none: return Center( child: Text('No Connection'), ); break; case ConnectionState.waiting: case ConnectionState.active: return CircularProgressIndicator(); break; case ConnectionState.done: if (snapshot.hasError) { print(snapshot.error); print("Dashboard Error"); } return snapshot.hasData ? _build(context, snapshot.data) : CircularProgressIndicator(); break; } return Container(); }, ),
-
إجابة بلال زيادة سؤال في أخطاء ANR وتصحيح الأخطاء flutter كانت الإجابة المقبولة
يمكنك تجاهل هذا الأمر , ولا داعي لأي إجراء , وإلى الأن لا يوجد حل لهذا الإشعار , ولا يكون هناك أي مشكلة بتطبيقك.
-
إجابة بلال زيادة سؤال في كيف يمكن قراءة بيانات من ملف JSON في node.js كانت الإجابة المقبولة
سيكون امتداد الملف هو
.json بحيث فلنفترض أن لدينا ملف اسمه constant.json و به المعلومات التالية
{ "data": [ { "id" : 1, "name": "Jakets", }, { "id" : 2, "name": "Sports", }, ] } فيمكننا الوصول إلى الملف و قراءة محتوياته باستخدام node js باستخدام دالة readFileSync بهذه الطريقة
const fs = require('fs'); let file = fs.readFileSync('constant.json'); let data = JSON.parse(file); console.log(data); ايضا يمكننا قراءة الملف و جلب محتوياته باستخدام دالة readFile بهذا الشكل
const fs = require('fs'); fs.readFileSync('constant.json', (err, file) => { if(err) throw err; let data = JSON.parse(file); console.log(data); });
-
إجابة بلال زيادة سؤال في شرح دالة strpos و كيفية استخدامها في php كانت الإجابة المقبولة
تبحث الدالة strpos() عن أول ظهور لمحارف معينة في سلسلة نصية ثم تعيد ترتيب موقعها في تلك السلسلة. و تركيب هذه الدالة
int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) حيث المتغير
$haystack هي السلسلة النصية التي ستبحث عنها. و المتغير
$needle مجموعة المحارف التي ستبحث الدالة عنها. إن لم تكن تلك المحارف سلسلة نصية، فستحول إلى عدد صحيح وتعامل على أنها قيمة ترتيبية للمحارف. و متغير
$offset معامل اختياري وهو قيمة إزاحة المؤشر من بداية السلسلة النصية والذي يبدأ عنده البحث. إن كانت قيمة هذا المعامل سالبة، فسيبدأ البحث بعد إزاحة المؤشر من نهاية السلسلة النصية والذي سيبدأ عند البحث.
ومن الأمثلة على هذه الدالة
<?php $mystring = 'abc'; $findme = 'a'; $pos = strpos($mystring, $findme); // لاحظ أنَّنا استعملنا المعامل ===. لن يجدي استعمال المعامل == نفعًا إذ لن يعمل كما //.هو الأول أي 0 'a' هو متوقع له لأنَّ موقع المحرف الذي نبحث عنه if ($pos === false) { echo "The string '$findme' was not found in the string '$mystring'"; } else { echo "The string '$findme' was found in the string '$mystring'"; echo " and exists at position $pos"; } ?> حيث يمكنك الرجوع إلى شرح هذه الدالة على موقع ويكي حسوب من هنا .
-
إجابة بلال زيادة سؤال في ظهور الصفحة فارغة عند كتابة أكواد html كانت الإجابة المقبولة
لاحظ أنه لم تقم بحفظ الملف , ولو أردت التأكد من ذلك سوف تلاحظ أنه يوجد نقطة بيضاء بجانب اسم الملف و هو page.html فعليك حفظ الملف بعد الأنتهاء من كتابة الأكواد عن طريق الضغط على قائمة file ثم save أو بالضغط على لوحة المفاتيح على الزرين ctrl + s او من خلال فائمة file يمكنك تعليم خيار auto save , هل لو سمحت قمت بحفظ الملف و تجربة فتحه مرة أخرى و أخباري بالنتيجة.
-
إجابة بلال زيادة سؤال في مشكلة عدم ظهور تطبيقي في جوجل بلاي كانت الإجابة المقبولة
لا يظهر التطبيق بسرعة كبيرة على المتجر يجب الأنتظار كم يوم حتى يظهر , ايضا عند البحث عن باسم التطبيق و اسم المطور يكون قد ظهور لأنك بحثت باسمه أو باسم مطوره ولكن في حالة وجود تطبيقات مشابهة و تكون أقدم من تطبيقك فسوف تظهر قبل تطبيقك و يكون تطبيقك في الصفحات التالية , ايضا حاول الاهتمام بوصف التطبيق و اسمه و محاولة تمييزه بكلمات دليلة تدل عليه مما تساعد في تقدمه في نتائج البحث الأولى. ولكن لا تقلق سوف يظهر تطبيقك مع مرور الوقت في الصفحات الأولى بعد الزيارات و التحميلات التي سوف تتم عليه.
-
إجابة بلال زيادة سؤال في حذف او تعديل محتوى في القاعدة بعد مرور وقت محدد كانت الإجابة المقبولة
حاول حذف الساعات و الدقائق و الثواني من الدالة date و قم بتجربة الأمر مرة أخرى.
<?php if ( date("Y-m-d")==$row['end_time'] ) : ?>
-
إجابة بلال زيادة سؤال في جلب عدد المتصلين في الموقع كانت الإجابة المقبولة
يمكنك إضافة TIME_TO_SEC إلى الأستعلام الخاص بك بحيث تقوم هذه الدالة بتحويل قيمة الوقت إلى ثواني , بهذا الشكل
"SELECT COUNT(*) FROM users u WHERE TIME_TO_SEC() <= 18000" ثم بداخل أقواس هذه الدالة نقوم بطرح الوقت الحالي مع اخر وقت تم تخزينه في الحقل last_login_date عن طريق الدالة TIMEDIFF بهذا الشكل
"SELECT COUNT(*) FROM users u WHERE TIME_TO_SEC(TIMEDIFF(NOW(), u.last_login_date)) <= 18000" لاحظ الوقت الحالي نعبر عنه بِ
NOW()
-
إجابة بلال زيادة سؤال في ربط جدولين داخل قاعدة البيانات باستخدام php كانت الإجابة المقبولة
يمكنك فعل ذلك من خلال استخدام inner join بهذه الطريقة
$con = mysqli_connect("localhost", "root", "123123", "database"); mysqli_query($con, "SELECT n.*, u.* FROM notification n inner join user u on n.user_id=u.id"); فلاحظ أننا قمنا بوضع مفتاح يعبر عن كل جدول فحرف n يعبر عن جدول notification و حرف u يعبر عن جدول user ثم قمنا بجلب كل من الحقول من كلا الجدولين باستخدام * ثم قمنا ربط الجدولين باستخدام inner join كما في المثال السابق . ايضا يمكنك ربط أكثر من جدول بهذه الطريقة من خلال استخدام inner join كذلك
mysqli_query($con, "SELECT n.*, u.*, c.title FROM notification n inner join user u on n.user_id=u.id inner join chat c on c.user_id=u.id"); هل يمكنك إرفاق الكود الخاص بك لنساعدك في ربط الجداول ؟
-
إجابة بلال زيادة سؤال في ماذا تعرف عن ملف init.js ? كانت الإجابة المقبولة
صحيح , الملف مكتوب باستخدام مكتبة جيكويري, لذلك تم وضعه بعد سطر استدعاء مكتبة جيكويري و معنى كلمة init.js ربما هي اختصار لكلمة initialize أي ملف البداية و لكن هذا لا يهم يمكن تسمية الملف بأي اسم تريده . ووظيفة الملف هو التعامل مع أحداث النقر على الأزرار و حدث الرجوع لإعلى إذا كان سكرول الصفحة أسفل و الكثير من الأحداث ويتم قراءة الملف بعد تحميل الصفحة حتى تكون العنصر قد حُملت بشكلٍ كامل .
لم أفهم ما تقصد أنه كان يستخدم ك command line و لكن الأن ظهرت عدة تقنيات مثل Webpack بحيث توفر عملية تجميع ملفات css أو js و استدعاء الملف في حالة استخدامه فقط. , هل ربما تقصد هذه التقنية ؟
-
إجابة بلال زيادة سؤال في كيفية التحقق من اخطاء flutter كانت الإجابة المقبولة
يمكنك استخدام خاصية Crashlytics بحيث هذه الميزة تساعدك على جمع التحليلات و التفاصيل حول الأعطال و الأخطاء التي تحدث في تطبيقك. و يمكنك استخدام حزمة
flutter_crashlytics يمكنك من خلال موقع pub.dev من هنا الإطلاع على هذه الحزمة , ايضا هناك تعمل بنفس الفكرة و منها موقع sentry.io و يقدم خدمة تتبع الأخطاء في التطبيق الخاص بك ايضا عن طريق حزمة
sentry_flutter من هنا , بحيث أيضا تقدم لك سجلاً كامل بكل الأخطاء و المشاكل التي تواجه المستخدمين عند استخدام تطبيقك.
-
إجابة بلال زيادة سؤال في تصفير حقل بداخل قاعدة البيانات كل ساعة باستخدام php كانت الإجابة المقبولة
هناك استعلام يتم إنشاء حدث من خلال كل وقت معين في قاعدة البيانات و هذا الاستعلام هو
CREATE EVENT و يمكنك إنشاء حدث كل وقت معين , كل ساعة أو كل دقيقة أو كل ثانية فيمكنك فعل التالي
CREATE EVENT `eventName` ON SCHEDULE EVERY 12 HOUR ON COMPLETION NOT PRESERVE ENABLE DO UPDATE users SET tasks_pro = 0 فلاحظ أنه قمنا بإنشاء حدث يتكرر كل 12 ساعة و اسم هذا الحدث هو eventName , ويقوم بعمل reset لحل tasks_pro و يرجع قيمته 0 , ويمكنك تحويل الحدث إلى العمل بالدقائق فيمكنك تغيير كلمة Hour إلى MINUTE فيصبح الحدث
CREATE EVENT `eventName` ON SCHEDULE EVERY 12 MINUTE ON COMPLETION NOT PRESERVE ENABLE DO UPDATE users SET tasks_pro = 0
-
إجابة بلال زيادة سؤال في كيف اعمل ملف كونفج بإستخدام array كانت الإجابة المقبولة
يمكنك فعل ذلك عن طريق وضع array تحوي كامل المصفوفات التي بداخلها فمثلاً يمكنك فعل التالي
$config = array( 'db' => array( 'host' => 'localhost', 'username' => 'root', 'password' => 'password', 'database' => 'database', ), ); لاحظ أنه تم إنشاء أول مصوفوفة و كل index في هذه المصفوفة يحتوي على مصفوفة أخرى , ايضا يمكنك تعريف index أخرى بهذا الشكل
$config = array( 'db' => array( 'host' => 'localhost', 'username' => 'root', 'password' => 'password', 'database' => 'database', ), 'settings' => array( 'name' => 'admin', 'password' => '123123123', ), ); ويمكنك الوصول إلى أي قيمة عن طريق المفتاح الخاص به , فيمكن أن نجلب قيمة host بهذا الشكل
echo $config['db']['host']; وكذلك قيمة username
echo $config['db']['username']; أو حتى يمكن جلب قيمة name
echo $config['settings']['name'];
-
إجابة بلال زيادة سؤال في مشكلة استعراض مشاريع واجهات المستخدم بعد رفعها على رابط github كانت الإجابة المقبولة
ربما يكون هناك خلل في مسار جلب ملف التنسيقات , يجب التأكد من ذلك عن طريق فتح الموقع و الضغط على الزر الأيمن للماوس و اختيار عرض مصدر الصفحة و محاولة تتبع مسار ملف التنسيقات هل هو صحيح أم لا , ايضا تأكدي من اسم ملف التنسيقات و هل قمتي بكتابته بشكلٍ صحيح أو لا
-
إجابة بلال زيادة سؤال في تحديد المسافة بين موقعين باستخدام php كانت الإجابة المقبولة
ربما استطيع مساعدتك في برمجة دالة تحدد المسافة , فلنقم بصنع دالة وليكن اسمها getDistance
function getDistance(){ } و لنمرر لها المتغيرات الأتية و هي
$lat1, $lon1, $lat2, $lon2, $radius بحيث
$lat1, $lon1 هي أحداثيات الموقع الخاص بك و
$lat2, $lon2 هي أحداثيات الموقع الذي تريد جلب المسافة بينك وبينه و
$radius هو نصف قطر بين كل أحداثيين فتكون الدالة بهذا الشكل
function getDistance( $lat1, $lon1, $lat2, $lon2, $radius ) { } ثم نقوم بجلب الزاوية باستخدام متغير
$radius $angle = $radius / 180; ثم نقسم كل أحداثية على هذه الزاوية
$lat1 /= $angle; $lon1 /= $angle; $lat2 /= $angle; $lon2 /= $angle; ثم نستخدم rad2deg لتحويل الرقم الدائري إلى رقم مكافئ بالدرجات ثم نمرر لها دالة acos لجيب تمام القوسي للرقم ثم نمرر المتغيرات الأربعة داخل دالة sin لإرجاع جيب الرقم بهذا الشكل
return rad2deg( acos( sin( deg2rad( $lat1 ) ) * sin( deg2rad( $lat2 ) ) + cos( deg2rad( $lat1 ) ) * cos( deg2rad( $lat2 ) ) * cos( deg2rad( $lon1 - $lon2 ) ) ) ) * $angle; ثم نضرب الرقم الناتج بالزاوية حتى نحصل على المسافة فتكون الدالة بهذا الشكل
function getDistance( $lat1, $lon1, $lat2, $lon2, $radius ) { $angle = $radius / 180; $lat1 /= $angle; $lon1 /= $angle; $lat2 /= $angle; $lon2 /= $angle; return rad2deg( acos( sin( deg2rad( $lat1 ) ) * sin( deg2rad( $lat2 ) ) + cos( deg2rad( $lat1 ) ) * cos( deg2rad( $lat2 ) ) * cos( deg2rad( $lon1 - $lon2 ) ) ) ) * $angle; } يرجى تطبيق الحل و أخباري بالنتيجة , فهذا الحل ربما يفيدك و أتمنى أن أكون أجبت على سؤالك بشكلٍ جيد, الأمر قد يكون معقد نوعاً ما و لكن بعد مراجعة الدوال المستخدمة ستوضح لك الأمور كاملة بإذن الله