| 
	
		|  Autor | Tema: Problema con codigo php ( consulta y ejecucion )  (Leído 4,007 veces) |  
	| 
			| 
					
						| XXXXXX | 
 
Antes que nada explicare la función del codigo. Esto funciona a través de un formulario, la cosa es que tiene que comprobar que no existan otros "duplicados" del mail y el usuario, y bien, me e encallado, ya que e probado mil formas y no funciona, o directamente me tira siempre para el if, exista o no duplicado o no me funciona, o se salta la comprobación. La cosa es que tiene que comprobar que no existan duplicados, y luego pasar a insertar ( esa parte si funciona ) $valor =  "SELECT * FROM `login` WHERE ('userid='$usuario', email='$mail')";/* Si existe algun correo, el valor de la variable $valor sera 1,
 Si no existe algun correo, el valor de la variable $valor sera 0
 */
 
 if(!empty($valor)){//Si la variable $valor contiene algun valor se ejecuta el if
 //Recordando que 0 es un valor nulo o mejor dicho nada y como 0 no es nada
 //no se ejecuta el if....
 echo "el usuario <b><font color='red' >''" . $usuario . "''</font></b>";
 echo " o el Email <b><font color='red' >''" . $mail . "''</font></b> ya estan en uso";
 echo "Intenta con otro nombre o email, para regresar click aquí";
 
 }//Fin del if y entra el else
 else{//En caso que el if falle se ejecuta el else
 mysql_query("INSERT INTO `login` (userid, user_pass, sex, email) VALUES ('$usuario','$password','$sexo','$mail')");
 echo " tu cuenta a sido registrada satisfactoriamente, ahora puedes loguearte <b><font color='red' >" . $usuario . "</font></b> haciendo click aqui";
 //Hacemos la consulta insertando los datos...
 }//Fin del else
 
saludos y gracias por adelantado
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Nakp 
								casi es 
								Ex-Staff
								    Desconectado 
								Mensajes: 6.336
								 
								he vuelto :)
								
								
								
								
								
								     | 
 
ese es el codigo completo? alguna vez realizas la consulta? lo que te devuelve esa query no era un resultset? pueden ser 2 filas    el id y correo existen pero son de distinto usuario...
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 Ojo por ojo, y el mundo acabará ciego. |  |  |  | 
			| 
					
						| XXXXXX | 
 
Antes tenia este codigo... $valor = mysql_num_rows(mysql_query("SELECT * FROM `login` WHERE userid = '$usuario'"));
 pero solo me sirve para uno, y yo tengo que hacer 2 comprovaciones |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ~ Yoya ~ 
								Wiki  Desconectado 
								Mensajes: 1.125
								
								   | 
 
porque simplemente no le agregas al campo mail y usuario valores unique |  
						| 
								|  |  
								|  |  En línea | 
 
 Mi madre me dijo que estoy destinado a ser pobre toda la vida.Engineering is the art of balancing the benefits and drawbacks of any approach.
 |  |  |  | 
			| 
					
						| XXXXXX | 
 
Como? explícate mejor por favor.
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| MinusFour | 
 
Solo una observacion.... Lo que estas haciendo aqui: $valor =  "SELECT * FROM `login` WHERE ('userid='$usuario', email='$mail')";
 Esto ni siquiera es una consulta, esto es meramente un string. (No se ejecuta nada) Por lo tanto.... emtpy($valor) //Devuelve false; 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Shell Root | 
 
Como? explícate mejor por favor. :http://www.ignside.net/man/mysql/indices.php |  
						| 
								|  |  
								|  |  En línea | 
 
 Te vendería mi talento por poder dormir tranquilo. |  |  |  | 
			| 
					
						| XXXXXX | 
 
Pero diganme..
 $valor = mysql_num_rows(mysql_query("SELECT * FROM `login` WHERE userid = '$usuario'"));
 
 este no sirve? ( me funciona para 1 )
 
 pero si tendria que poner para que comprobara 2 cosas, como me lo montaria?
 
 lo del otro ya vi que no lleva a ningun lado.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ~ Yoya ~ 
								Wiki  Desconectado 
								Mensajes: 1.125
								
								   | 
 
Tienes que poner el campo mail y usuario como uniques, como te eh dicho... mysql> DESCRIBE nombres;+--------+-------------+------+-----+---------+----------------+| FIELD  | TYPE        | NULL | KEY | DEFAULT | Extra          |+--------+-------------+------+-----+---------+----------------+| id     | SMALLINT(6) | NO   | PRI | NULL    | AUTO_INCREMENT || nombre | CHAR(15)    | NO   | UNI | NULL    |                |+--------+-------------+------+-----+---------+----------------+2 ROWS IN SET (0.00 sec) mysql> INSERT INTO nombres (nombre) VALUES ('Jose'), ('Lukas'),('jose');ERROR 1062 (23000): Duplicate entry 'Jose' FOR KEY 'nombre' 
 Asi evito que existan nombres iguales en el campo....  |  
						| 
								|  |  
								|  |  En línea | 
 
 Mi madre me dijo que estoy destinado a ser pobre toda la vida.Engineering is the art of balancing the benefits and drawbacks of any approach.
 |  |  |  | 
			| 
					
						| Shell Root | 
 
Claro que también lo podrías hacer desde PHP. Así: Resultado:#Connecting to the database #Select Database  if (!$db_selected) { die ('Can\'t use <b>db_PoC</b> : ' . mysql_error()); }  function fSelectRecord($sQuery){  # Function select Record   global $conexion;     return false;  }else{	  $sReturn[] = $sRow;	}  }  return $sReturn[0]; }  function fValidateRecord($sString, $sField){  # Function to validate the existence of a record   global $conexion;   $sReturnQuery = fSelectRecord("SELECT ".$sField." FROM tbl_usuarios WHERE ".$sField." = '".$sString."';", conexion);   if($sReturnQuery[$sField] == $sString){    return 'Yes';  }else{    return 'Not';  } }  echo fValidateRecord('alex1', 'nombre')."<br>"; echo fValidateRecord('alex5', 'nombre')."<br>"; echo fValidateRecord('alex2@hotmail.cl', 'email')."<br>"; echo fValidateRecord('alex5@hotmail.cl', 'email')."<br>";
 YesNotYesNot
 |  
						| 
								|  |  
								|  |  En línea | 
 
 Te vendería mi talento por poder dormir tranquilo. |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | Consulta ejecucion Software
 | salondono | 0 | 1,689 |  5 Abril 2011, 01:12 am por salondono
 |  
						|   |   | Adobe no solucionará un problema de ejecución de código en Photoshop Elements 8 Noticias
 | wolfbcn | 0 | 1,811 |  5 Octubre 2011, 13:15 pm por wolfbcn
 |  
						|   |   | iTunes soluciona, sin mencionarlo, un problema de ejecución de código Noticias
 | wolfbcn | 0 | 1,509 |  24 Junio 2012, 23:22 pm por wolfbcn
 |  
						|   |   | (Consulta) Ejercicio de Listas en C - Error de Ejecucion Programación C/C++
 | palacio29 | 0 | 1,981 |  15 Octubre 2016, 18:12 pm por palacio29
 |  
						|   |   | Ejecución parcial de segunda consulta .NET (C#, VB.NET, ASP)
 | dbadila | 0 | 1,986 |  3 Septiembre 2020, 05:17 am por dbadila
 |    |