Erro de variável durante validação

Tenho um formulário referente a reserva de veículos da empresa, ele passa por 4 validações para garantir que o veículo está disponível na data e hora definidos. Caso veículo esteja disponível, ele grava o registro e caso não esteja, ele gera um aviso e não grava o registro da reserva.
No ambiente de desenvolvimento do Scriptcase ele está funcionando normalmente, não só executando como a validação também funciona, mas quando exportado para o ambiente de produção, durante validação ele apresenta o erro “Undefined variable: category”.
A variável "category é utilizada na validação, mas o estranho é que antes das últimas alterações a aplicação no ambiente de desenvolvimento não apresentava esse erro, e já utilizava essa variável.

Segue o código da validação:

    // Captura dados do formulário
$dh_start = {start_date}. ' '. {start_time};
$dh_end   = {end_date}  . ' '. {end_time};
$key      = {id};
$id = {id};
$start_time = {start_time};
$end_time = {end_time};
$category = {category};

//Se chave(id) for vazia, é um registro novo, e assume -1
if (empty($key)) { 
	$key = '-1';   
}

// Estrutura do Sql pra verificação


//VALIDAÇÃO 1
$sql = "select category from reserva_veiculo
        where  id != '".$key."'
		   and category = '".$category."'
           and (( '".$dh_start."' >= concat(start_date, ' ', start_time) 
		      and '".$dh_start."' < concat(end_date  , ' ', end_time))
           or   ('".$dh_end."' >= concat(end_date  , ' ', end_time) 
		     and '".$dh_end."' < concat(start_date, ' ', start_time)))";

//Executa o $sql, e retorno na variavel ret
sc_select(ret, $sql);

// captura dados
$existe = $ret->fields['category'];

// se existir dados, acusar erro e não salva

if (!empty($existe)) {
  sc_error_message('Esse veículo não está disponível.');
}

//VALIDAÇÃO 2
$sql = "select category from reserva_veiculo
        where  id != '".$key."' 
	       and category = '".$category."' 
 and (('".$dh_start."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time) or
       '".$dh_end."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time))
       or  ('".$dh_start."' < concat(start_date,' ', start_time) 
       and ('".$dh_end."' > concat(end_date  ,' ', end_time  )  
	   or  '".$dh_end."'  < concat(end_date, ' ', end_time))))";

//Executa o $sql, e retorno na variavel ret
sc_select(ret, $sql);

// captura dados
$existe = $ret->fields['category'];

// se existir dados, acusar erro e não salva

if (!empty($existe)) {
  sc_error_message('Esse veículo não está disponível.');
}

//VALIDAÇÃO 3

$sql = "select category from reserva_veiculo
  where id != '".$key."' 
	and category = '".$category."'
    and (('".$dh_start."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time) or  '".$dh_end."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time))
     or  ('".$dh_start."' < concat(start_date, ' ', start_time) and ('".$dh_end."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time)))  
     or  ('".$dh_end."'> concat(end_date, ' ', end_time) and ('".$dh_start."' between concat(start_date, ' ', start_time) and concat(end_date, ' ', end_time))))";
	 

//Executa o $sql, e retorno na variavel ret
sc_select(ret, $sql);

// captura dados
$existe = $ret->fields['category'];

// se existir dados, acusar erro e não salva

if (!empty($existe)) {
  sc_error_message('Esse veículo não está disponível.');
}


//VALIDAÇÃO 4

$sql = "SELECT category FROM reserva_veiculo
		WHERE id != '".$id."' 
		AND category = '".$category."'
		AND end_date = '".$end_date."' 
		AND (start_time = '".$start_time."' 
		OR end_time = '".$start_time."' 
		OR end_time = '".$end_time."'
		OR start_time = '".$end_time."'
		OR ('".$start_time."' BETWEEN start_time AND end_time) 
		OR ('".$end_time."' BETWEEN start_time AND end_time))";

//Executa o $sql, e retorno na variavel ret
sc_select(ret, $sql);

// captura dados
//$existe = $ret->fields['category'];

// se existir dados, acusar erro e não salva
if (!empty($ret)) {
  sc_error_message('Esse veículo não está disponível.');
}

Não utilize nome de variáveis igual a nome de Campos scriptcase.

Use $_category, por exemplo.

2 Curtidas

Deu certo, obrigado.