A validação da função nao_tenha_a_palavra_melhor não funciona caso a primeira palavra seja "melhor".
Ex: melhor bola de futebol
Obs: caso comece com maiúsculo, funciona! "Melhor bola de futebol"
A validação da função nao_tenha_a_palavra_melhor não funciona caso a primeira palavra seja "melhor".
Ex: melhor bola de futebol
Obs: caso comece com maiúsculo, funciona! "Melhor bola de futebol"
Oi Leandro, tudo bom?
Posso dar uma olhada no seu método nao_tenha_a_palavra_melhor
? Assim fica mais fácil analisar o motivo =)
Repare que a função strpos
é case sensitive. Ou seja, ela diferencia maiusculas de minusculas. Caso você queria uma função que verifica a ocorrencia de uma string dentro de outra sem diferenciar maiusculas de minusculas você pode usar a função stripos
Aguardo retorno.
Abraço!
Olá André, obrigado pelo retorno. Segue meu código:
public function nao_tenha_a_palavra_melhor($nome) {
$posicao = strpos($nome, "melhor");
if($posicao !== FALSE) {
return TRUE;
} else {
$this->form_validation->set_message("nao_tenha_a_palavra_melhor", "O campo '%s' não pode conter a palavra 'melhor'");
return FALSE;
}
}
$this->form_validation->set_rules("nome", "nome", "required|min_length[5]|callback_nao_tenha_a_palavra_melhor");
Do jeito que está, com strpos, só funciona se a palavra melhor for escrita com M maiúsculo. Com stripos não pega de forma alguma.