Foros del Web » Programando para Internet » PHP »

ayuda para localizar error en codigo

Estas en el tema de ayuda para localizar error en codigo en el foro de PHP en Foros del Web. Buenas!! estoy tratando de hacer un validador de usuarios de mi base da datos para evitar la duplicidad en la tabla se almacenan todos los ...
  #1 (permalink)  
Antiguo 13/11/2009, 14:52
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años, 7 meses
Puntos: 23
Pregunta ayuda para localizar error en codigo

Buenas!!

estoy tratando de hacer un validador de usuarios de mi base da datos para evitar la duplicidad

en la tabla se almacenan todos los datos generales y muchos datos mas pero necesito hacer la validacion basada en el nombre

mi codigo es este:

Código PHP:
<?
$buscador
="Jesus Alfredo Gonzalez Solis";
$servidors="localhost";
$usuarios="root";
$contrass="jorge";
$base="smac";
       
$link=mysql_connect($servidors,$usuarios,$contrass);
       
mysql_select_db($base,$link);
echo 
"Solicito los datos : $buscador <br>";
$bar3 $buscador//$bar1.$bar;
$i=1;
$query mysql_query("SELECT * FROM archivo WHERE nombre LIKE '$bar3%' ORDER BY nombre, seccion"); //Busca los Elementos de la Delegacion
//$query=mysql_query("SELECT nombre FROM archivo WHERE nombre=$bar3");
$num_resultados=mysql_num_rows($query);
$quiery=mysql_fetch_assoc($query);

while (
$row mysql_fetch_assoc($query)) {
      
$nombre=$row['nombre'];
  echo 
"nombre igual : ".$nombre;
}
echo 
"<br>contenido de Query : ".$quiery;
echo 
"<br>contenido de bar3 : ".$bar3;
$num_resultados=mysql_num_rows($query);

if(
$num_resultados>0){
echo 
"<br>SI se encontro :".$num_resultados;
//lo sentimos el usuario ya existe
}else{
echo 
"<br>NO se encontro :".$num_resultados;
//continuamos el registro
}
?>
no me marca error pero el resultado que me arroja es este:


Código PHP:
Solicito los datos Jesus Alfredo Gonzalez Solis
contenido de Query 

contenido de bar3 Jesus Alfredo Gonzalez Solis
Coincidencias que se encontro 
:
esto lo hago para verificar mis procesos

error no marca pero tampoco realiza lo que quiero

que concretamente es Verificar que un usuario NO exista y asi darle de alta

haber si alguien me puede ayudar...

de antemano Gracias!!


un saludo!!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #2 (permalink)  
Antiguo 13/11/2009, 19:40
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 15 años
Puntos: 65
Respuesta: ayuda para localizar error en codigo

Si lo que queres es preguntar si un usuario existe o no en una base de datos, lo que haria yo (por ejemplo) es meter en una variable el nombre buscado ($nombre), hacer una consulta del estilo:

Código PHP:
$sql="select * from [tabla] where nombre = $nombre;";
$consulta=mysql_query($sql) or die("Error: ".mysql_error());
$existe=mysql_num_rows($consulta);

if(
$existe==1){
echo 
"Ya existe!!";
}else{
echo 
"No existe!!";

Ademas estas creando un vector asociativo con mysql_fetch_assoc().. yo la verdad no use mucho esta funcion, pero si no lo recorres ni le indicas un valor para el puntero ($quiery['algo']) no te va a largar nada com salida....
  #3 (permalink)  
Antiguo 13/11/2009, 19:49
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: ayuda para localizar error en codigo

echo "<br>contenido de Query : ".$quiery;

es $query
__________________
Hospedaje Web al mejor costo!
  #4 (permalink)  
Antiguo 13/11/2009, 21:18
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años, 7 meses
Puntos: 23
Respuesta: ayuda para localizar error en codigo

buenas!!

Gracias a los dos por responder

Jackson666:
si de hecho ya lo eh puesto asi pero no me arroja resultados no me hace bien la consulta... asumia que era algo diferente y por eso lo cambia a este estilo
si te das cuenta tengo // comentado el codigo que lo hacia y lo cambie porque no me funciono

urgido:
si ya se que es $query pero si te fijas meti en la variable $quiery el resultado para poder visualizarlo con el echo y no alterar el resultado original del query que ya se cual es....

y ya haciendo las modificaciones regresando al formato anterior sigue sin funcionarme :s

haciendo el ajuste de codigo me saca este error

Código PHP:
ErrorYou have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'Alfredo Gonzalez Solis' at line 1 
alguien que me ayude por favor!!

un saludo!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!

Última edición por HalconVigia; 13/11/2009 a las 21:26
  #5 (permalink)  
Antiguo 13/11/2009, 21:22
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: ayuda para localizar error en codigo

Código PHP:
Ver original
  1. $query = mysql_query("SELECT * FROM archivo WHERE nombre='".$bar3."'");
__________________
Hospedaje Web al mejor costo!
  #6 (permalink)  
Antiguo 13/11/2009, 21:57
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años, 7 meses
Puntos: 23
Respuesta: ayuda para localizar error en codigo

Buenas!!

Gracias.... ya se resolvio con las comillas el detalle del error pero....

no me valida la existencia....

en la base SI existen los nombres que le pongo pero me sigue diciendo que NO hay o no existe

en otras palabras... NO hace la verificacion
porque puede ser???

un saludo!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #7 (permalink)  
Antiguo 13/11/2009, 22:02
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: ayuda para localizar error en codigo

haber sustituye:


if($num_resultados>0){
echo "<br>SI se encontro :".$num_resultados;
//lo sentimos el usuario ya existe
}else{
echo "<br>NO se encontro :".$num_resultados;
//continuamos el registro
}
?>

por:


if($num_resultados>0){
echo "<br>SI se encontro :".$num_resultados."<br>El nombre es: ".$nombre;
//lo sentimos el usuario ya existe
}else{
echo "<br>NO se encontro :".$num_resultados."<br>El nombre no encontrado es: ".$nombre;
//continuamos el registro
}
?>
__________________
Hospedaje Web al mejor costo!
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 21:56.