init all entradas keys and cast to float — silence PHP 8 undefined-key/non-numeric warnings

This commit is contained in:
2026-06-29 16:55:37 -03:00
parent 188f253e00
commit ece8a1d6b7

View File

@@ -131,14 +131,25 @@ function limpaPost($valor){
//Função para pegar a entrada
function validar_entrada(){
global $entradas;
$entradas = array("lingua2" => 0, "lingua" => 0, "porcentagem" => 0, "repro_rec" => 0, "repro_nrec" => 0, "estagio" => 0, "estagio_exterior" => 0);
foreach ($_POST as $chave => $valor){
if (empty($valor)){
$item = 0;
$entradas[$chave] = $item;
// Lista completa dos campos numericos esperados. Inicializar todos em 0
// evita avisos de "Undefined array key" no PHP 8 quando o formulario chega
// incompleto, e o cast para float garante valores numericos (sem avisos de
// "non-numeric value") mesmo diante de um POST adulterado.
$campos = array(
'programa', 'mobilidade', 'lingua', 'lingua2', 'porcentagem',
'repro_rec', 'repro_nrec', 'media', 'ic', 'extensao', 'monitoria',
'art_periodicos', 'art_congresso', 'cap_livros', 'livros', 'resumos',
'evento_extensao', 'evento_pesquisa', 'congresso',
'estagio', 'estagio_exterior',
);
$entradas = array();
foreach ($campos as $campo) {
if (isset($_POST[$campo]) && $_POST[$campo] !== '') {
$entradas[$campo] = (float) limpaPost($_POST[$campo]);
} else {
$item = limpaPost($valor);
$entradas[$chave] = $item;
$entradas[$campo] = 0;
}
}
}