Intereting Posts
API-интерфейс Google API с использованием метода CURL post Чтобы понять PHP-команду include -command Является ли Quercus (Java) быстрее, чем собственный PHP? Обновление страницы вместо Ajax Загрузка без Неустранимая ошибка: класс «CModelEvent» не найден в CModel.php в строке 189 Отображать контент на основе даты с помощью PHP PHPUnit загружает все классы одновременно. Вызывает PHP Неустранимая ошибка: не удается переопределить класс MongoDB / doctrine: не может вложить $ или $ $ Получать значения из нескольких полей выбора с одинаковым именем? Включая его значение с jquery и php PHP: HTTP Basic – Выход из системы Как защитить / закодировать Javascript POST-запросы Лучший способ разбора недопустимого HTML в PHP Opencart: Как связать параметры продукта (например, размер и цвет)? Замена обратных косых черт косой чертой с помощью str_replace () в php Как я могу проверить, есть ли у пользователя веб-камера или нет?

Использование PHP / MySQL для расчета процентов

Я пытаюсь рассчитать количество студентов, которые закончили домашнее задание для онлайн-книги, и я не могу понять код из …

// SELECT THE TOTAL $gettotal = "SELECT enroll FROM student_course WHERE classID = $classID"; $showtotal = @mysqli_query ($dbc, $gettotal); // Run the query. //THIS IS LINE 108 $numtotal = mysql_num_rows($showtotal); echo '$numtotal'; // SELECT THOSE PASSED $getpassed = "SELECT entry FROM grades WHERE classID = $classID AND test_result >= 80"; $showpassed = @mysqli_query ($dbc, $getpassed); // Run the query. $numpassed = mysql_num_rows($showpassed); //THIS IS LINE 117 echo '$numpassed'; // PERFORM THE PERCENTAGE FUNCTION function percent($numpassed, $numtotal) { $count1 = $numpassed / $numtotal; $count2 = $count1 * 100; $count = number_format($count2, 0); echo $count; } //THIS IS LINE 124 percent($numpassed, $numtotal); 

Я получаю следующую ошибку:

Предупреждение: mysql_num_rows (): предоставленный аргумент не является допустимым ресурсом результата MySQL в строке 108 $ numtotal Предупреждение: mysql_num_rows (): предоставленный аргумент не является допустимым ресурсом результата MySQL в строке 117 $ numpassed Предупреждение: деление на ноль в строке 124 0

Solutions Collecting From Web of "Использование PHP / MySQL для расчета процентов"

Хорошо – пока я благодарю всех за их заботу, удалив @ … никто не заметил, что проблема заключалась в использовании mysqli _query, а затем mysql _num_rows. Его нужно было изменить на mysqli _num_rows.

Спасибо хоть 🙂

Скорее всего, запрос не сработал.

Также mysql_query вернет FALSE при ошибке, чтобы вы могли это проверить.

 $result = mysql_query('SELECT * WHERE 1=1'); if (!$result) { die('Invalid query: ' . mysql_error()); } 

Btw: Возможно, вы захотите удалить оператор @ перед mysql_query, чтобы вы видели, что там что-то не так.

Удалите подавление ошибок (@) в коде и используйте методы проверки print_r ($ var) и var_dump ($ var), чтобы проверить возвращаемые значения вызовов базы данных.