-
المساهمات
1733 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
1
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Khaled Osama3
-
لقد ارسلت لك الكود بالفعل
- 9 اجابة
-
- 1
-
-
اذا كنت تقصد تعديل الكود فهذا هو الكود كامل : <!DOCTYPE html> <html lang="ar"> <head> <link rel="icon" href="https://c0.klipartz.com/pngpicture/573/614/gratis-png-ng%C5%A9-hanh-s%C6%A1n-distrito-casa-apartamento-inmobiliaria-volta-redonda-venta-de-logotipos-de-bienes-raices.png" /> <title>موقع العقارات</title> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Tajawal:wght@300&display=swap" rel="stylesheet"> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" media="screen" href="home.css"> </head> <body> <header> <div> <img src="a.png" alt="نظام العقارات من كمال تجريبي"> </div> <center> <div> <button>نقاط البيع🏫</button> <button>أدارة المخزون</button> <button>الإراضي💰</button> <button>⚽الشيكات</button> <button>الأستاذ العامΞ</button> <button>إدارة النظام</button> </div> </center> </header> <?php $server = 'DESKTOP-PJDLJNR'; $database = 'Legacy'; $username = ''; $password = ''; $connection = new PDO("sqlsrv:Server=$server;Database=$database", $username, $password); if (!$connection) { die(print_r(sqlsrv_errors(), true)); } $sql_query = 'select * from Problemss;'; $result = $connection->query($sql_query); ?> <table border="1" width="100%"> <tr> <th>🏫تم</th> <th>الحلول</th> <th>المشكلة</th> <th>م</th> <th>الرقم</th> </tr> <?php while ($row = $result->fetch(PDO::FETCH_ASSOC)) { ?> <tr> <td><?php echo $row['تم']?></td> <td><?php echo $row['الحلول']?></td> <td><?php echo $row['المشكلة']?></td> <td><?php echo $row['م']?></td> <td><?php echo $row['الرقم']?></td> </tr> <?php } ?> </table> </body> </html>
- 9 اجابة
-
- 1
-
-
تطبيقها ازاى ؟
- 9 اجابة
-
- 1
-
-
هذه الدالة لم تعد صالحة للاستخدام mysql_fetch_assoc() يجب عليك استخدام الدالة الموجودة فى المثال هذا: // قم بتنفيذ استعلام $result = $mysqli->query("SELECT * FROM اسم_الجدول"); // جلب البيانات باستخدام مصفوفة ترابطية while ($row = $result->fetch_assoc()) { // قم بمعالجة كل صف من البيانات echo $row['اسم_العمود'] . "<br>"; }
-
هذا الخطأ يرجع الى بسبب استخدام الدالة القديمة فى محالة جلب البيانات يجب عليك استخدام الدالة الجديدة وهذا مثال كامل يوضح لك الفرق. <?php // قم بإنشاء اتصال بقاعدة البيانات $mysqli = new mysqli("localhost", "اسم_المستخدم", "كلمة_المرور", "اسم_قاعدة_البيانات"); // تحقق من الاتصال if ($mysqli->connect_error) { die("فشل الاتصال: " . $mysqli->connect_error); } // قم بتنفيذ استعلام $result = $mysqli->query("SELECT * FROM اسم_الجدول"); // .جلب البيانات while ($row = $result->fetch_assoc()) { // قم بمعالجة كل صف من البيانات echo $row['اسم_العمود'] . "<br>"; } // أغلق الاتصال $mysqli->close(); ?>
- 8 اجابة
-
- 1
-
-
عبارة عن driver (موصل)، المسؤول عن إنشاء الاتصال بين التطبيق لديك والسيرفر الذى توجد عليه قاعدة البيانات الخاصة بك.
-
انت تحتاج الى تنزيل ODBC على جهازك ، يمكنك تحميله من الموقع الرسمى لشركة microsoft : https://www.microsoft.com/en-us/download/details.aspx?id=36434
- 8 اجابة
-
- 1
-
-
هناك فرق كبير بين العامل == والعامل in في بايثون: العامل == يقوم بالمقارنة ويرجع قيمة بوليان True أو False حسب نتيجة المقارنة. مثلا: a == b أما العامل in فهو يفحص إذا كان عنصر أو قيمة موجودة ضمن مجموعة أو متتالية أو قائمة dictionary ويرجع True أو False. a in list ليس للعامل in علاقة بدوال التكرار زي for loop، حيث أنه يقوم بفحص وجود عنصر وليس تكرار عملية. مثلا يمكنك استخدام in داخل شرط if بدلا من for لفحص وجود عنصر: if a in list: print("item exists") لكن لو أردنا فحص وجود عنصر باستخدام for بدلا من in، يمكن كتابة الكود كالتالي: found = False for item in list: if item == a: found = True break if found: print("item exists") إذاً in يستخدم لفحص وجود عنصر في مجموعة، بينما == للمقارنة والمطابقة.
- 3 اجابة
-
- 1
-
-
الحاجات دي هتساعدك ترفع الperformance وaccessibility وseo 1- أولًا، لا يجب أن يحتوي الكود الخاص بـ HTML لديك على أخطاء؛ يجب أن يكون صحيحًا بالكامل (Valid). يمكنك زيارة هذا الموقع وإدخال الكود لحل المشكلات https://validator.w3.org/ 2- يجب كتابة البادئات (prefixes) الخاصة بـ CSS لدعم المتصفحات. يمكنك وضع الكود الخاص بك هنا بعد الانتهاء، وهذا الموقع سيقوم بتعديله لك https://autoprefixer.github.io/ 3- سأوضح هنا بعض الجوانب المتعلقة بالصور، مثل جودتها وحجمها، والبديل (alt attribute)، وتقنية التحميل الكسول (Lazy Load)، وتغيير حجم الصور، وتأثيرها على الأداء. يمكنك تحسين جودة صورك باستخدام العديد من المواقع التي توفر صوراً بجودة عالية مجاناً. فيما يتعلق بحجم الصور، إذا كان كبيراً، يجب تقليله دون التأثير على جودتها، وهناك العديد من المواقع التي تقدم خدمة ضغط الصور. بالنسبة لتقنية التحميل الكسول، عند فتح موقع، يُفترض أن جميع الصور تُحمّل دفعة واحدة، وهو ما يؤثر على الأداء بالطبع. هذه التقنية تجعل فقط الصور التي يراها المستخدم تبدأ بالتحميل، وكلما تم التنقل داخل الموقع، تُحمّل الصور واحدة تلو الأخرى. يمكنك استخدام هذه التقنية بإضافة السمة loading="lazy" إلى علامة img. يمكنك أيضاً التأكد من ملاءمة أحجام الصور لمختلف أحجام الشاشات باستخدام استعلامات الوسائط (media queries)، بتغيير حجم الصور عند تصغير الشاشة ووضع صور مناسبة للتابلت والموبايل، أو تثبيت حجم الصورة، لأن تغيير حجم الصور قد يقلل من الأداء. يمكن القيام بذلك باستخدام علامة HTML picture. بالنسبة للبديل (alt attribute)، لا يجب أن تكون فارغة، فهذا خطأ يؤثر على تحسين محركات البحث (SEO) وإمكانية الوصول، ويجب أن تحتوي على كلمات تصف الصورة. 4-من الضروري قبل رفع الموقع أن تقوم بتصغير حجم (minify) كود الـ CSS والـ JS لأن هذا سيخفض حجم ملف الكود إلى النصف تقريبًا، مما سيحسن الأداء بشكل ملحوظ ويقلل من عدد الطلبات الـ HTTP. كل ملف (CSS، JavaScript، صورة) يحتاج إلى طلب HTTP خاص به ليتم تحميله. يُنصح بدمج الملفات معًا قدر الإمكان لتقليل الطلبات. يمكنك القيام بذلك من خلال استخدام بعض المواقع الإلكترونية المتخصصة في هذا المجال. 5-يمكنك استخدم ال light house ستجدها ف dev tools يمكنك فتحها بالضغط علي f12 يمكنك من خلالها ان تقيس الperformance وaccessibility وseo وستعطيك تعليمات لاجل تحسينهم وستظهر من خلالها المشاكل التي لديك ويمكنك حلها 6- تاج meta description هذا يوضع في الhead وهذا سيفرق في الSeo لدرجه كبيره جدا بمقارنه انه بسيط جدا. 7-يمكنك استخدم Bundlers ستفيدك في المشاريع الكبيره وستسهل عليك الكثير من الاشياء مثل Webpack او gulp او غيره. 8- استخدام الكاش (Cache) تخزين الكاش يساعد في تسريع التحميل للزوار العائدين لموقعك. يتم تخزين بعض البيانات مؤقتًا لتجنب إعادة تحميلها في كل مرة. 9. استخدام شبكة توصيل المحتوى (CDN) هي شبكات توزع المحتوى من موقعك على خوادم حول العالم، مما يقرب المحتوى من المستخدم ويسرع التحميل. 10. تقليل استخدام الإضافات (Plugins) كلما زادت الإضافات، زاد الوقت اللازم لتحميل الصفحة. استخدم فقط الإضافات الضرورية. بتطبيق هذه النصائح، يمكن تحسين أداء موقع الويب بشكل كبير، مما يؤدي إلى تجربة مستخدم أفضل وتحميل أسرع للصفحات.
- 3 اجابة
-
- 1
-
-
يمكنك استخدام الدالة window.onload أو استخدام الحدث DOMContentLoaded الذي ينتظر تحميل DOM الصفحة بالكامل قبل تنفيذ الكود. إليك مثال بسيط على كيفية استخدام window.onload: window.onload = function() { // كود JavaScript الذي تريد تنفيذه عند تحميل الصفحة console.log('تم تحميل الصفحة بنجاح!'); // يمكنك استدعاء أي دالة هنا myFunction(); }; function myFunction() { // منطق الدالة الذي تريد تنفيذه console.log('تم تنفيذ دالة myFunction.'); } وهذا مثال آخر باستخدام DOMContentLoaded: document.addEventListener('DOMContentLoaded', function() { // كود JavaScript الذي تريد تنفيذه عندما يكون DOM جاهزًا console.log('DOM جاهز الآن للتفاعل معه!'); // يمكنك استدعاء أي دالة هنا myFunction(); }); function myFunction() { // منطق الدالة الذي تريد تنفيذه console.log('تم تنفيذ دالة myFunction.'); } الفرق بين الاثنين هو أن window.onload ينتظر تحميل كل شيء بما في ذلك الصور وأوراق الأنماط، بينما DOMContentLoaded ينتظر فقط تحميل HTML وبناء DOM. يمكنك اختيار الطريقة التي تناسبك أكثر حسب ما تريد أن تفعله الدالة عند تحميل الصفحة.
- 4 اجابة
-
- 1
-
-
في جافاسكريبت، Hoisting يعني أن تعريفات الدوال (functions) والإعلانات عن المتغيرات (variables declared with var) يتم رفعها إلى أعلى نطاقها (scope) قبل تنفيذ الكود. هذا لا يعني أن الكود يتم نقله فعليًا إلى الأعلى، بل يعني أن البيئة التنفيذية لجافاسكريبت تتعامل مع هذه الإعلانات كأنها موجودة في الأعلى. تخيل أنك في فصل دراسي، ولديك قائمة بأسماء الطلاب الذين يجب أن يقدموا عرضًا اليوم. عندما يبدأ اليوم الدراسي، يكتب المعلم أسماء الطلاب الذين سيقدمون على السبورة حتى قبل أن يبدأوا في العرض. هذا يعني أن الجميع في الفصل يعرف من سيقدم حتى قبل أن يحين دورهم. في عالم البرمجة، هذه العملية تشبه "Hoisting". في JavaScript، "Hoisting" هو سلوك يتم بموجبه "رفع" تعريفات الدوال (functions) والمتغيرات (variables) إلى أعلى النطاق الذي تم تعريفها فيه، وذلك قبل تنفيذ أي كود. هذا يعني أنه يمكنك استدعاء دالة أو استخدام متغير قبل أن يتم تعريفه في الكود. console.log(x); // undefined var x = 5; console.log(x); // 5 في المثال أعلاه، عندما نحاول طباعة قيمة x قبل تعريفه، لا نحصل على خطأ، بل نحصل على قيمة undefined. هذا لأن المتغير x تم "رفعه" إلى الأعلى، لكن دون تعيين قيمة له بعد. فقط عندما نصل إلى السطر الذي يعرّف x ويعطيه قيمة، يمكن استخدام هذه القيمة. مهم أن نعرف أن "Hoisting" يعمل بشكل مختلف قليلًا بين الدوال والمتغيرات. للدوال، يتم رفع تعريف الدالة بأكمله، مما يعني أنه يمكن استدعاء الدالة حتى قبل تعريفها في الكود sayHello(); function sayHello() { console.log("مرحباً!"); } هنا، حتى وإن تم استدعاء sayHello() قبل تعريفها، البرنامج يعمل دون مشكلة ويطبع "مرحباً!". لكن بالنسبة للمتغيرات المعرفة باستخدام let أو const، فإن "Hoisting" لا يعمل بنفس الطريقة؛ يتم رفع المتغير لكن لا يمكن استخدامه قبل تعريفه console.log(y); // ReferenceError: y is not defined let y = 5; في هذا المثال، محاولة استخدام y قبل تعريفه تؤدي إلى خطأ. النقطة الرئيسية هي أن "Hoisting" يجعل بعض الأجزاء من الكود متاحة للاستخدام قبل أن يتم تنفيذ سطورها فعليًا، ولكن يجب استخدامها بحكمة لتجنب الارتباك أو الأخطاء غير المتوقعة في البرنامج.
-
نعم، يمكنك الاعتماد على Flexbox (الفليكس) دون الحاجة إلى Grid (الشبكة) في الكثير من حالات التصميم في CSS. Flexbox (الفليكس) هو طريقة لترتيب العناصر في صف واحد أو عمود واحد. يتيح لك التحكم بسهولة في توزيع المساحة بين العناصر وتوجيهها (أفقيًا أو عموديًا). ولكن يفضل استخدامه عندما يكون لديك تخطيط يتطلب ترتيب العناصر في خط مستقيم (سواء كان ذلك خطًا أفقيًا أو عموديًا)، مثل شريط التنقل، أو عندما تحتاج إلى محاذاة العناصر بطريقة معينة داخل الحاوية. Grid (الشبكة) هو طريقة لترتيب العناصر في شبكة متعددة الأعمدة والصفوف. يوفر تحكمًا دقيقًا في تخطيط العناصر على الصفحة بالنسبة للأعمدة والصفوف. ولكن يفضل استخدامه عندما تحتاج إلى ترتيب العناصر في تخطيط يشبه الشبكة، مثل معرض الصور أو لوحة المعلومات، حيث تحتاج إلى التحكم في توزيع العناصر عبر صفوف وأعمدة متعددة. ولكن يمكن الاعتماد على الفليكس دون الشبكة. Flexbox قادر على التعامل مع الكثير من التصميمات والتخطيطات التي تحتاجها في معظم المواقع. ومع ذلك، قد تجد في بعض الحالات الخاصة أن استخدام Grid يمكن أن يجعل الأمور أسهل، خصوصًا عند التعامل مع تخطيطات معقدة تتطلب التحكم في العديد من العناصر في شبكة متعددة الأبعاد. باختصار يمكنك استخدم الفليكس عندما تحتاج إلى تخطيط بسيط ومرن للعناصر في صف أو عمود. واستخدم الشبكة لتخطيطات أكثر تعقيدًا تتطلب التحكم في توزيع العناصر في صفوف وأعمدة متعددة. اختار الأداة المناسبة للمشكلة التي تواجهها. ولكن إذا وجدت راحتك في استخدام Flexbox ويمكنها تلبية احتياجات تصميمك، فمن الممكن جدًا الاعتماد عليها في معظم الأحيان.
-
اذا كنت تريد استخدام دالة IFبطريقة تتيح لك التحقق من عدة احتمالات يمكنك استخدام دالة IF المدمجة مع دالة CHOOSE. مثال : =IF(A1="أ", 300, IF(A1="ب", 600, IF(A1="ج", 200, "قيمة غير صحيحة")))
- 3 اجابة
-
- 1
-
-
للبحث بين تاريخين يمكنك استخدام where وهذا مثال عليه: DateTime startDate = // تعيين التاريخ البداية هنا; DateTime endDate = // تعيين التاريخ النهاية هنا; dataGridView1.DataSource = db.TBL_ACCOUNTONG_EMP .Where(x => x.ACCOUNTING_EMP_NAME.Contains(txtname.Text) && x.YourDateColumn >= startDate && x.YourDateColumn <= endDate) .ToList(); وللبحث باستخدام تاريخ : DateTime searchDate = // تعيين التاريخ المطلوب هنا; dataGridView1.DataSource = db.TBL_ACCOUNTONG_EMP .Where(x => x.ACCOUNTING_EMP_NAME.Contains(txtname.Text) && x.YourDateColumn == searchDate) .ToList();
- 2 اجابة
-
- 1
-
-
المشكلة التي تواجهها قد تكون متعلقة بسلوك إرسال النموذج، مما قد يؤدي إلى إعادة تحميل الصفحة ومسح محتوى عنصر <h4> الذي يحمل معرّف "the-message". كل ما عليك هو وقف السلوك التلقائى للنموذج عن طريق تعديل ملف الmain.js كالتالى: const writing = document.getElementById("message-input") function getMessage(event) { event.preventDefault(); document.getElementById("the-message").innerHTML = writing.value writing.value = ""; } وتعديل فى ملف index.html كالتالى : <button class="submit" onclick="getMessage(event)"> Submit </button> <h4 id="the-message" style="text-align: center;"></h4>
- 3 اجابة
-
- 2
-
-
قد تبدو المشكلة لديك فى الفاصل(delimiter) بين العناصر فى ال JSON. تأكد من أنك قبل ارسال البيانات أنه ليس هناك أى delimiter زيادة فى آخر ال JSON مثل: "username":"Ahmed", "age":25,//هنا يوجد فاصلة وانك واضع بين كل عنصر لديك فى ال JSON فاصل (delimiter). "username":"Ahmed" //هنا ناقصة فاصلة "age":25
-
قم بارسال الكود كامل
-
1. قم بإنشاء virtualenv جديد باستخدام الأمر: python3 -m venv myenv 2. تفعيل الـ virtualenv: في Windows .\myenv\Scripts\activate في macOS/Linux: source myenv/bin/activate 3. تثبيت مكتبة Requests داخلها: pip install requests يمكنك التحقق من تثبيت مكتبة requests بشكل صحيح عن طريق تشغيل الأمر: pip list يجب أن ترى requests ضمن القائمة المعروضة. 6. أنشئ ملف py واستدع مكتبة Requests: import requests وهكذا سيتم تركيب Requests على venv فقط دون المؤثر على بيئة Python الأساسية.
- 1 جواب
-
- 1
-
-
قم بتجربة الحل الذى ارسلته.
-
الملف الذى ارسلته ناقص لا يمكن فتحه ، ارسل الكود فقط الموجود داخله. قد تبدو المشكلة انك لا ترسل المسار الخاص بالملف الذى تريد ان تقرأ منه او تكتب عليه وهذا مثال يوضح الحل ببساطة. #include <iostream> #include <fstream> using namespace std; int main() { fstream myFile; string data; myFile.open("D:\\files\\test.TXT",ios::out| ios::app); cout<<myFile.is_open(); myFile>>data; cout<<data; return 0; }
-
ارسل الكود البرمجي كامل.
-
جرب هذه الصيغة cd mongo ويرجى السؤال أسفل الفيديو لكى استطيع مساعدتك أكثر.
-
تراكيب البيانات هي طريقة تنظيم وتخزين البيانات في الحواسيب ويكون ذلك التخزين فى ذاكرة الوصول العشوائي (memory)تشمل هذه التراكيب أنواع مختلفة مثلما ذكرت فى سؤالك مثل list و ال sets وغيرها. أما SQL فهى لغة برمجة خاصة بإدارة و استعلام قواعد البيانات العلاقية وتخزينها يكون دائما على ال hard disk. كل موضوع منهم ليس له علاقة بالآخر، فهما شيئين مختلفين عن بعضهما.
- 4 اجابة
-
- 2
-
-
اذا بدأت فى كورس تعلم الآلة سوف تدرس كل تلك المكتبات التى ذكرتها، فليس هناك داعى لتعلمها الآن.
- 3 اجابة
-
- 1
-
-
يمكنك استخدام الداله filter() التي تستخدم لتصفية عناصر المصفوفة واسترجاع عناصر معينة تحقق شرط ما. تأخذ filter() دالة ك callback. هذه الدالة تتلقى كل عنصر من المصفوفة ويجب ان تعيد true أو false. إذا رجعت true يتم إضافة العنصر إلى مصفوفة جديدة. إذا رجعت false لا يتم إضافته. النتيجة هي مصفوفة جديدة تحتوي على العناصر التي تحقق الشرط. مثال: const numbers = [1,2,3,4]; const filtered = numbers.filter(num => { return num > 2; }); // filtered is [3,4] في هذا المثال تم تصفية الأعداد الأكبر من 2 باستخدام filter(). ويمكنك ان تفعل مثل هذا المثال لتصفيه كل الاسماء التي تبدأ بحرف ال "A" let friends = ["Ahmed", "Sayed", "Eman", "Mahmoud", "Ameer", "Osama", "Sameh"]; let letter = "a"; let filteredFriends = friends.filter(name => { return !name.startsWith(letter); }); تم استبعاد الأسماء التي تبدأ بحرف 'A' بواسطة !name.startsWith(letter). يمكنك التعمق اكثر من هنا