Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

1André

operador || php

Recommended Posts

E ai galera beleza,

estou inciando em php e me deparei com um problema aqui que não sei como resolver, acredito que esse problema seja aparentemente simples vamos lá

 

tenho um formulário que envia para um arquivo php o dado tipo_pessoa que pode ser 1 ou 2, nesse arquivo php preciso fazer uma verificação desses dados e pretendo fazer da seguinte forma por exemplo:

se o tipo pessoa for diferente de 1 ou 2 escreva: selecione o tipo pessoa

se não prossiga o script.

 

porem não estou conseguindo, e não consigo identificar onde estou errando

 

vejam como está código:

if($_REQUEST['tipo_pessoa'] != '1' || $_REQUEST['tipo_pessoa'] != '2'){ 
   echo "selecione o tipo de pessoa";
}else{
   //prosseguindo...
}	

acredito que seja bastante simples, mais como falei estou nos primórdios do php rsrsrs

 

abraço !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim

<?php

if(($_REQUEST['tipo_pessoa'] != '1') || ($_REQUEST['tipo_pessoa'] != '2'))
{ 
   echo "selecione o tipo de pessoa";
}
else
{
   //prosseguindo...
}
	
?>

Se não der, verifique que valor está vindo em tipo_pessoa. As vezes não está caindo em nenhum dos casos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeira coisa e ter certeza que seu $_REQUEST realmente esta vindo com valores 1e2 e se realmente são strings;

 

|| = OR , simplesmente OU, tento primeira condição OU segunda condição.

//$_REQUEST['tipo'] = 3;$pessoa = isset($_REQUEST['tipo'])?$_REQUEST['tipo']:0;if($pessoa === 0){ echo "não existe request<br />";}//não igual e do mesmo tipoif($pessoa !== '1' || $pessoa !== '2'){echo "pessoa e diferente de 1 e 2<br />";}//php tipando pra voce ;) i love php for this.if($pessoa > 2 || $pessoa !== 0){echo "pessoa e diferente de 1 e 2<br />";

Compartilhar este post


Link para o post
Compartilhar em outros sites

obrigado pela resposta Maykel-ctba,

 

porem não funcionou, mesmo quando coloco tipo pessoa como 1 ou 2 e envio o formulário ele mostra a mensagem

"selecione o tipo pessoa", porem quando eu deixo o código assim:

if($_REQUEST['tipo_pessoa'] != '1'){ 
   echo "selecione o tipo de pessoa";
}else{
   //prosseguindo...
}

ele prossegue se o tipo pessoa for 1 , mais interrompe se o tipo pessoa for 2, preciso que ele prossiga com o tipo pessoa sendo 2 também, em relação a verificação que você citou abaixo

 

se eu fizer da seguinte forma:

if($_REQUEST['tipo_pessoa'] == '0'){ 
   echo "selecione o tipo de pessoa";
}else{
   //prosseguindo...
}

eu consigo fazer o script prosseguir quando enviou tipo_pessoa 1 ou 2, porem não acho seguro uma vez que se o cara forçar tipo pessoa 3 no input vai dar erro no código saca?

 

no código só é possível tipo_pessoa ser 1 ou 2 caso contrario não prossegue o script.


Luis Paullo obrigado pela resposta, vou montar da forma que você orienta em breve retorno aqui se eu conseguir

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não dá pra ser as duas coisas ao mesmo tempo...

switch ($_REQUEST['tipo_pessoa']) {case '1':case '2':    echo "selecione o tipo de pessoa";    break;else:    //prosseguindo...}

Não dá pra ser as duas coisas ao mesmo tempo...

switch ($_REQUEST['tipo_pessoa']) {case '1':case '2':    //prosseguindo    break;default:    echo "selecione o tipo de pessoa";}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera,

montei o código com o exemplo do Prog e funcionou segue abaixo o código para se mais algum iniciante tiver esse problema:

<?php
   switch ($_REQUEST['tipo_pessoa']) {
     case '1':
     case '2':
?>

<form action="#" method="post">
   <!-- monto um formulário html aqui -->
</form>

<?php
     break;
     default: echo "selecione o tipo de pessoa";
   }
?>

Agradeço a todos que me ajudaram valeu mesmo !

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.