Foros del Web » Programando para Internet » PHP »

comprobar si 4 variables tienen alguna el mismo valor

Estas en el tema de comprobar si 4 variables tienen alguna el mismo valor en el foro de PHP en Foros del Web. Hola gente, me surge una dudilla que no se muy bien por donde cogerla... tengo un formulario que envia 4 valores, recojo los 4 valores: ...
  #1 (permalink)  
Antiguo 10/03/2012, 07:41
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
comprobar si 4 variables tienen alguna el mismo valor

Hola gente, me surge una dudilla que no se muy bien por donde cogerla... tengo un formulario que envia 4 valores, recojo los 4 valores:

$valor1=$_POST["variable1"];
$valor2=$_POST["variable2"];
$valor3=$_POST["variable3"];
$valor4=$_POST["variable4"];

Ahora lo que necesito saber cual metodo puedo utilizar para comprobar las 4 variables y comprobar que ninguna tengan el mismo valor, se hacer el if basico de comprobar una con otra pero nunca me habia surgido esto de tener que comparar 4 :D
  #2 (permalink)  
Antiguo 10/03/2012, 08:51
Avatar de Th3_Night  
Fecha de Ingreso: junio-2011
Ubicación: Montevideo
Mensajes: 8
Antigüedad: 12 años, 9 meses
Puntos: 1
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

Con los ifs sería demasiado largo creo yo, voy a usar una serie de arrays para ver si queda mejor:
Código PHP:
Ver original
  1. <?php
  2. $valor1=$_POST["variable1"];
  3. $valor2=$_POST["variable2"];
  4. $valor3=$_POST["variable3"];
  5. $valor4=$_POST["variable4"];
  6.  
  7. $valores1 = array($valor2, $valor3, $valor4);
  8. $valores2 = array($valor1, $valor3, $valor4);
  9. $valores3 = array($valor1, $valor2, $valor4);
  10. $valores4 = array($valor1, $valor2, $valor3);
  11.  
  12. if ( ! in_array($valor1, $valores1) && ! in_array($valor2, $valores2) && ! in_array($valor3, $valores3) && ! in_array($valor4, $valores4))
  13. {
  14. // ninguno es igual
  15. }
  16. else
  17. {
  18. // alguno es igual a otro
  19. }
No estoy muy seguro, lo acabo de inventar y no lo he probado
  #3 (permalink)  
Antiguo 10/03/2012, 09:00
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 8 meses
Puntos: 793
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

Podrías hacer algo así:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $arr = array($valor1, $valor2, $valor3, $valor4);
  4.  
  5. if (count($arr) != count(array_unique($arr))) {
  6.     echo 'NO son diferentes';
  7. } else {
  8.     echo 'SON diferentes';
  9. }
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #4 (permalink)  
Antiguo 11/03/2012, 17:16
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

Vale muchas gracias a ambos pero andresdzphp tu codigo me daba error en la linea del if :(, con lo que aunque mas largo he usado el codigo de Th3_Night y parece que hace lo que quiero.

Muchas gracias.
  #5 (permalink)  
Antiguo 11/03/2012, 18:01
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 8 meses
Puntos: 793
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

Cita:
Iniciado por rompeguesos Ver Mensaje
Vale muchas gracias a ambos pero andresdzphp tu codigo me daba error en la linea del if :(, con lo que aunque mas largo he usado el codigo de Th3_Night y parece que hace lo que quiero.

Muchas gracias.
Pues copialo manualmente, porque errores de sintaxis no tiene hacer lo que hizo Th3_Night es darle la vuelta al mundo 10 veces.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #6 (permalink)  
Antiguo 11/03/2012, 18:11
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 6 meses
Puntos: 188
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

SANTO DIOS Th3_Night.... jejeje no te creas

Bueno una solución mas corta es esta :D

Código PHP:
Ver original
  1. foreach($POST as $i= $vi){
  2.  
  3. foreach($POST as $j= $vj){
  4.  
  5. if($i != $j){
  6.  
  7. if($vi == $vj)  echo "existe un valor repetido";
  8.  
  9. }
  10.  
  11. }
  12.  
  13. }
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #7 (permalink)  
Antiguo 12/03/2012, 17:17
Avatar de Th3_Night  
Fecha de Ingreso: junio-2011
Ubicación: Montevideo
Mensajes: 8
Antigüedad: 12 años, 9 meses
Puntos: 1
Respuesta: comprobar si 4 variables tienen alguna el mismo valor

Hahahaha... La solución de jovan y ni hablar la de andres fueron más cortas.

Cita:
Iniciado por andresdzphp Ver Mensaje
hacer lo que hizo Th3_Night es darle la vuelta al mundo 10 veces.
+1 xD!

Etiquetas: alguna, formulario, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:11.