警告:非数字值遇到问题

Warning: A non-numeric value encountered problem

我遇到了执行此错误的在线考试问题:"in /storage/ssd4/822/13313822/public_html/examen/controlador/examenControl.php on line 11"

examenControl.php是:

<?php
session_start();

require_once "../ruta.php";
require_once $_SERVER['DOCUMENT_ROOT'].ruta::ruta. '/Modelo/Beans/examen.php';
require_once $_SERVER['DOCUMENT_ROOT'].ruta::ruta. '/Modelo/Bo/examenBo.php';

switch ($_REQUEST['action']) {    
    case "evalua":
        $examen=new examen();    
        $examen->suma=$_POST['sum']+$_POST['sum2']+$_POST['sum3']+$_POST['sum4']+$_POST['sum5']+$_POST['sum6']+$_POST['sum7']+$_POST['sum8']+$_POST['sum9']+$_POST['sum10'];  
        $examen->r1=$_POST['sum'];
        $examen->r2=$_POST['sum2'];
        $examen->r3=$_POST['sum3'];
        $examen->r4=$_POST['sum4'];
        $examen->r5=$_POST['sum5'];         
        $examen->r6=$_POST['sum6'];         
        $examen->r7=$_POST['sum7'];         
        $examen->r8=$_POST['sum8'];         
        $examen->r9=$_POST['sum9'];         
        $examen->r10=$_POST['sum10'];         
        $examen->id= $_SESSION['idaspirante'];
        $bo=new examenBo();
        $r = $bo->registrarResultadoBo($examen);
        print($r);
        break;
}
?>

我觉得这个问题的值不是0,但我不知道如何解决。 如何解决问题?

谢谢。

您可以通过将输入转换为数值来解决错误,但最好检查这些输入,如果没有您想要的值类型,return 会出现错误

$examen->suma = floatval($_POST['sum']) + floatval($_POST['sum2']) + floatval($_POST['sum3']) + floatval($_POST['sum4']) + floatval($_POST['sum5']) + floatval($_POST['sum6']) + floatval($_POST['sum7']) + floatval($_POST['sum8']) + floatval($_POST['sum9']) + floatval($_POST['sum10']);