Yalqht نشر 24 فبراير 2021 أرسل تقرير نشر 24 فبراير 2021 يتم جمع الاختبار الأول مع الثاني مع النهائي وطباعة تقدير الطالب على النحو التالي : أقل من 60 يطبع راسب من 60 - 69 يطبع مقبول من 70- 79 يطبع جيد من 80 -89 يطبع جيد جداً من 90 -100 يطبع ممتاز مع ملاحظة أنه في حالة درجة الطالب في الاختبار الأول أو الثاني أقل من 5 درجات يعتبر راسب وأن لا تقل درجة الاختبار النهائي عن 20 درجة يعتبر أيضاً راسب . 1 اقتباس
0 أسامة كمال النبريص نشر 24 فبراير 2021 أرسل تقرير نشر 24 فبراير 2021 في البداية سأعتبر أن لديك الجدول باسم grades الذي يحتوي على علامات الطلاب والذي ستكون اسماء الأعمدة على الشكل التالي: first_grade, second_grade, final_grade واسم الجدول لديك grades سيكون لدينا الكود كالتالي: $servername = "localhost"; $username = "root"; $password = ""; // Create connection $conn = mysqli_connect($servername, $username, $password, 'schoolGrades'); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "SELECT * FROM grades"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while ($row = $result->fetch_assoc()) { if ($row['first_grade'] <= 5 || $row['second_grade'] <= 5 || $row['final_grade'] <= 20) { echo "راسب"; continue; } $sum = $row['first_grade'] + $row['second_grade'] + $row['final_grade']; switch ($sum) { case $sum >= 90: echo "ممتاز"; break; case $sum >= 80 && $sum < 89: echo "جيد جداً"; break; case $sum >= 70 && $sum < 79: echo "جيد"; break; case $sum >= 60 && $sum < 69: echo "مقبول"; break; default: echo "راسب"; break; } } } else { echo "0 results"; } $conn->close(); اقتباس
0 Yalqht نشر 24 فبراير 2021 الكاتب أرسل تقرير نشر 24 فبراير 2021 (معدل) مشكور يغالي ماقصرت بس ابي الكود في elseif ويكون مربوط بالصفحه الاولى الي عندي وذا كود الصفحه الاولى <!DOCTYPE html> <html lang="en"> <head> <title>Bootstrap Example</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"> </head> <body> <div class="container"> <h2>درجات الطالب</h2> <form action="AAA.php"> <div class="form-group"> <label for="num">درجة اختبار شهر الأول:</label> <input type="text" class="form-control" id="email" name="num"> </div> <div class="form-group"> <label for="pwd">درجة اختبار شهر الثاني:</label> <input type="text" class="form-control" id="num" name="num"> </div> <div class="form-group form-check"> <label class="form-check-label"> </label> <button type="submit" class="btn btn-primary">انهاء</button> <form method="get" action="AAA.php"> </div> </body> </html> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script> تم التعديل في 24 فبراير 2021 بواسطة أسامة كمال النبريص وضع الكود في المكان الصحيح 1 اقتباس
0 أسامة كمال النبريص نشر 24 فبراير 2021 أرسل تقرير نشر 24 فبراير 2021 كود الصفحة الخاص بك يحتوي على مدخلين هل تريد إدخال القيم ومن ثم إظهار النتيجة, إذا كان الأمر كذلك هذا ما تقوم به javascript بشكل اسهل أو php ولكن ينقصك كدخل العلامة النهائية. أما في حال كنت تريد إحضار جميع البيانات من قاعدة البيانات فالكود الذي أرسلته في البداية سيعمل معك مع التعديل على ما تطلبته وهو تحويل ال switch إلى ifelse. إذا كان الحساب سيتم مباشرة فالكود سيكون كالتالي, نضع هذا الكود الذي سيقوم بالتحقق من البيانات وحسابها في الأعلى: <?php $status =''; if(isset($_GET['grade1']) && isset($_GET['grade2']) && isset($_GET['final'])){ $sum = $_GET['grade1'] + $_GET['grade1'] + $_GET['final']; if($_GET['grade1'] <= 5 || $_GET['grade1'] <= 5 || $_GET['final'] <= 20) $status = 'راسب'; elseif ($sum >= 90) $status = 'ممتاز'; elseif ($sum >= 80 && $sum < 89) $status = 'جيد جداَ'; elseif ($sum >= 70 && $sum < 79) $status = 'جيد'; elseif ($sum >= 60 && $sum < 69) $status = 'مقبول'; else $status = 'راسب'; } ?> ولقد أضفت حقل إدخال إضافي للعلامة النهائية وكذلك النص الذي سيبين حالة الطالب لذا قم باستبدال ال form الذي لديك بهذا الكود: <form action=""> <div class="form-group"> <label for="num">درجة اختبار شهر الأول:</label> <input type="text" class="form-control" id="email" name="grade1" value="0"> </div> <div class="form-group"> <label for="pwd">درجة اختبار شهر الثاني:</label> <input type="text" class="form-control" id="num" name="grade2" value="0"> </div> <div class="form-group"> <label for="pwd">درجة اختبار النهائية:</label> <input type="text" class="form-control" id="num" name="final" value="0"> </div> <div class="form-group form-check"> <button type="submit" class="btn btn-primary">انهاء</button> </div> <div class="form-group"> <label for="pwd">انت:<?php echo $status; ?></label> </div> </form> يمكنك تنسيقه كيفما تشاء, وما يتم هنا هو أنه عند إدخال النصوص فانه سيرجع لنفس الصفحة ويتأكد في البداية من أن هنالك قيم تم إرسالها أم لا عبر هذا الكود: if(isset($_GET['grade1']) && isset($_GET['grade2']) && isset($_GET['final'])) وسيرى إن كان جميع القيم مدخلة سيستمر في العمل وليعم الكود بشكل صحيح وضعت البيانات الافتراضية هي 0 في حال لم يتم إدخال أي بيانات سيعتبر ان القيمة المدخلة صفر. اقتباس
السؤال
Yalqht
يتم جمع الاختبار الأول مع الثاني مع النهائي وطباعة تقدير الطالب على النحو التالي :
أقل من 60 يطبع راسب
من 60 - 69 يطبع مقبول
من 70- 79 يطبع جيد
من 80 -89 يطبع جيد جداً
من 90 -100 يطبع ممتاز
مع ملاحظة أنه في حالة درجة الطالب في الاختبار الأول أو الثاني أقل من 5 درجات يعتبر راسب
وأن لا تقل درجة الاختبار النهائي عن 20 درجة يعتبر أيضاً راسب .
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.