-
المساهمات
800 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
18
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو محمد ربيع زليول
-
في البداية نقوم بالإتصال بقاعدة البيانات، ونبحث عن مستخدم يمتلك إسم مستخدم وكلمة سر مطابقة لما قمنا بإدخالها في فورم تسجيل الدخول. يقوم الكود التالي: $stmt = $con -> prepare("SELECT * from users WHERE username_users = ? AND password_users = ? limit 1"); $stmt->execute(array($user,$hashpass)); $row = $stmt->fetch(); $count = $stmt->rowcount(); بإعادة القيمة 1 في حالة كان هناك مستخدم يمتلك معلومات مطابقة للمعلومات المدخلة في الفورم. بإعادة القيمة صفر 0 في حالة لم يكن هناك أي مستخدم يمتلك معلومات مطابقة للمعلومات المدخلة في الفورم. الجزء الأول من الكود صحيح، أي الجزء الموجود داخل الشفرة التالية: if ($count > 0){ // باقي محتوى الكود } أما الجزء الثاني، فيجب تعويضه بهذا: } else { echo "error in password"; } لأنه في حالة لم يكن أي مستخدم يمتلك تلك المعلومات، ستكون قيمة $row مساوية للقيمة False، إذن لا يمكننا الحصول على إسم المستخدم من مستخدم غير موجود.
- 13 اجابة
-
- 1
-
أعلم، أريد فقط سطر الكود، الذي تقوم به بإدخال معلومات الإتصال بقاعدة البيانات ( إسم المستخدم، كلمة السر، إسم قاعدة البيانات، ..)
- 13 اجابة
-
- 1
-
أنت في البداية، ذهبت لقاعدة البيانات وقمت بطلب المستخدم الذي لديه إسم مستخدم وكلمة سر معينة. إذن في حالة كانت هناك مستخدم بهذه المعلومات، سنقوم بالدخول للشرط الأول، وفي حالة لم يكن المستخدم موجودًا فمباشرة سنقوم بعرض رسالة الخطأ. لن نحتاج لإعادة إختبار هل المعلومات مطابقة أو لا، لأنها خاطئة بالفعل، ولا يوجد أي مستخدم بهذه المعلومات.
- 13 اجابة
-
- 1
-
صراحة لم أفهم الفكرة التي تشتغل عليها، فهمت الجزء الأول منها لكني لم أفهم الشرط الثاني. if ($count > 0) { // تقوم بتسجيل البيانات ثم تقوم بالإنتقال لإحدى الصفحات على حسب نوع المستخدم } else { // هذا المستخدم غير موجود أي لا نستطيع أخد قيمة خاصية // username_users منه // يعني يجب عرض رسالة الخطأ مباشرة }
- 13 اجابة
-
- 1
-
يبدو أن سبب المشكلة هي أن متغير $row ليس مصفوفة Array لكن قيمته bool أي إما True أو False. غالبًا ستكون قيمة $row هي False، لذالك لا تستطيع أخد الخاصية username_users من المتغير. يمكنك كتابة الكود التالي لحل المشكلة: if( is_array($row) && ($user == $row['username_users'])){ echo "hello"; } في هذه الشيفرة قمنا بالتأكد من أن متغير $row هو عبارة عن مصفوفة، قبل التحقق من تواجد الخاصية username_users ومقارنة قيمتها مع $user.
- 13 اجابة
-
- 1
-
مرحبًا غيات، يمكنك التواصل مع فريق الدعم من خلال الرابط التالي: مركز المساعدة، قم بفتح تذكرة وسيوم الفريق بالتواصل معك في أقرب وقت. شكرًا لك.
- 1 جواب
-
- 1
-
مرحبًا سليمان، يمكنك التواصل مع فريق الدعم من خلال الرابط التالي: مركز المساعد، قم بفتح تذكرة وسيقوم الفريق بالتواصل معك في أقرب وقت ممكن. أتمنى لك كل التوفيق.
-
يمكنك تعديل السطر التالي: $stmt = $con->prepare("SELECT id, name, imag, potx, pofl, cmnt, flng FROM post"); ليصبح هكذا: $stmt = $con->prepare("SELECT id, name, imag, potx, pofl, cmnt, flng FROM post order by id desc"); هنا نطلب منه إحضار المقالات مرتبة على حسب id بطريقة تنازلية، أي من أكبر إلى الأصغر.
- 2 اجابة
-
- 1
-
للحصول على النجوم بهذا الشكل يمكن كتابة الكود التالي: نقوم بطباعة النجمة في حالتين فقط: إذا كان i مساويًا لقيمة j إذا كان j مساويًا للقيمة 0 #include <iostream> using namespace std; int main() { int rows; cout << "Enter number of rows: "; cin >> rows; for(int i = 1; i <= rows; ++i) { for(int j = 1; j <= i; ++j) { if(i == j || j == 1) { cout << "* "; } else { cout << " "; } } cout << "\n"; } return 0; }
-
بالنسبة للشكل على اليمين يمكن عمله بالكود التالي: #include <iostream> using namespace std; int main() { int rows, count = 0, count1 = 0, k = 0; cout << "Enter number of rows: "; cin >> rows; for(int i = 1; i <= rows; ++i) { for(int space = 1; space <= rows-i; ++space) { cout << " "; ++count; } while(k != 2*i-1) { if (count <= rows-1) { cout << i - k - 1 << " "; ++count; } else { ++count1; cout << k - i + 1 << " "; } ++k; } count1 = count = k = 0; cout << endl; } return 0; } لتجربة الكود: رابط التجربة.
-
مرحبًا محمد، يمكنك التواصل مع فريق الدعم من خلال الرابط التالي: مركز المساعد، قم بفتح تذكرة وسيوم الفريق بالتواصل معك في أقرب وقت.
-
- 4 اجابة
-
- 1
-
لا أعلم ما هي المشكلة التي تواجهينها في باقي المواقع. لكن من خلال المثال التالي، الحل الصحيح هو كتابة: def multipy(a, b): return a * b عوض كتابة: def multipy(a, b): print(a * b) print(5, 6) لأنه ما يقوم به الموقع هو إستدعاء الدالة multipy، أي أنك غير مطالبة بإستدعاء الدالة، الموقع أو السؤال ينتظر منك إرجاع قيمة الجداء أو قيمة حل السؤال. وهو من يقوم بإستدعاء الدالة عبر مجموعة من القيم ليتحقق من أن الكود الخاص بك صحيح.
-
مرحبًا، لا تتطلب دورات حسوب معرفة مسبقة على العموم، لأن محتواها يبدأ من الأساسيات حتى الدروس المتقدمة. يمكن إستخدام أي حاسوب للتعلم، لكن كلما كانت إمكانياته جيدة أكثر كلما سهلت عليك العمل بشكل أسرع. بالتوفيق لك.
-
لا يتضمن مجلد boostrap المضغوط مكتبتي jQuery و Popper.js. بالنسبة لملف jquery يمكنك تحميله من الموقع الرسمي لjquery. كذالك بالنسبق لملف مكتبة Popper.js. أقترح عليك طريقة مغايرة للتحميل، أولًا قم بالدخول إلى موقع Bootstrap. توجه للجزء المخصص ل BootstrapCDN أسفل الصفحة، ستجد الأكواد التالية: <!-- CSS only --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> <!-- JS, Popper.js, and jQuery --> <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script> قم بأخد الروابط من هذه العناصر، بالشكل التالي: https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css https://code.jquery.com/jquery-3.5.1.slim.min.js https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js ثم في نافدة المتصفح قم بالدخول إلى هذه الروابط رابط برابط، ثم قم بتحميل الملف عن طريق الضغط بالزر الأيمن وإختيار خيار save as ... ثم قم بعدها بوضع هذه الملفات بمشروعك، ضغ ملفات css داخل مجلد css وملفات .js داخل مجلد js.
-
نعم برمجة ويب لا تتطلب امكانيات جهاز عالية، إلا في حالة استخدام ايطارات عمل ك Angular او React .. في حالة استخدمت لغات HTML, CSS, JavaScript, PHP ... لن نحتاج امكانيات عالية.
-
عليكم السلام ورحمة الله تعالى وبركاته. يمكنك التواصل مع فريق الدعم من هذا الرابط، عن طريق فتح تذكرة جديدة وإخبارهم بالمشكلة التي تواجهك، وسيقوم الفريق بإجابتك وحلها في أقرب وقت ممكن. شكرًا لك.
- 2 اجابة
-
- 1
-
من خلال الموقع الرسمية لـ visual studio code. توصي الشركة بالمواصفات التالية: معالج ب1.6 جيجا هرتز أو معالج أسرع. 1GB رام. أعتقد أن الموصفات المذكورة من طرفكم ستكون كافية للإشتغال بvisual studio code وبرمجة ويب لكن سيشتغل غالبًا بشكل بطيء.
- 3 اجابة
-
- 1
-
لبدأ العمل الحر عليك أن تمتلك مهارات أولًا. ولإمتلاك مهارات يجب دراسة مجال معين والتخصص به. لا يستطيع أحد إخبارك بالمجال الذي عليك تعلمه. يجب أن تختار بنفسك مجالًا تحبه وتجد انك جيد به، وأنك تستمتع بالإشتغال به، ثم تتعلم وتطور نفسك. وحينها ستكون قادرًا على العمل بالمجال الذي اخترته.
- 3 اجابة
-
- 1
-
في حالت اشتركت في دورة عربية، فغالبًا لن تحتاج تعلم الإنجليزية، لأن الشرح سيكون شرحًا عربيًا، مع بعض المصطلحات العلمية أو البرمجية الإنجليزية. وطبعًا في حالة كانت الدورة إنجليزية فلن تتمكن من متابعة محتوى الدورة وفهمه إلا وأنت تعرف اللغة الإنجليزية. تعلم الإنجليزية مهم في مجال البرمجة، لأن المحتوى الإنجليزي هو الأساس في هذا المجال، وعدد الشروحات ومستندات البرمجية باللغة الإنجليزية أكبر بكثير من المحتوى العربي، في حالة اردت إحتراف المجال، يجب عليك تطوير مستواك في اللغة الإنجليزية. في حالة أردت العمل بشكل حر في المجال، فيوجد منصات عربية للعمل الحر كمستقل وخمسات، كما أنه هناك عدد أكبر من المنصات الأجنبية.
- 5 اجابة
-
- 1
-
مرحبًا ياسين، يمكنك التواصل مع مركز الدعم من الرابط التالي، قم بفتح تذكرة، وسيقوم فريق الدعم بإجابتك وإرشادك في أقرب وقت. بالتوفيق لك.
-
أولًا نقوم بكتابة أساسيات أي برنامج ب C++ وهي الدالة main. #include <iostream> using namespace std; int main () { } ثم سنقوم بإنشاء متغيرين: المتغير الأول هو لحفظ قيمة n، وستأخد نوع int لأنه عدد صحيح طبيعي. المتغير الثاني لحفظ قيمة المجموع total، ستأخد القيمة الإبتدائية 0 ونوع float. #include <iostream> using namespace std; int main () { int n; float total = 0; } بعد ذلك سنطلب من المستخدم إدخال قيمة n. #include <iostream> using namespace std; int main () { int n; float total = 0; cout << "Enter n: "; cin >> n; } بعد ذلك ستقوم بعمل تكرار من قيمة 1 إلى قيمة n عن طريق for بالشكل التالي: #include <iostream> using namespace std; int main () { int n; float total = 0; cout << "Enter n: "; cin >> n; for (float i = 1; i <= n; i++){ } } في كل تكرار سنقوم بجمع total مع قيمة i/2. #include <iostream> using namespace std; int main () { int n; float total = 0; cout << "Enter n: "; cin >> n; for (float i = 1; i <= n; i++){ total = total + i / 2; } } وفي النهاية سنقوم بطبع قيمة المجموع، أي طبع قيمة total. #include <iostream> using namespace std; int main () { int n; float total = 0; cout << "Enter n: "; cin >> n; for (float i = 1; i <= n; i++){ total = total + i / 2; } cout << total; } يمكنك تجربة الكود عن طريق الرابط التالي.
- 5 اجابة
-
- 1