Foros del Web » Programando para Internet » PHP »

problemas al ahcer una consulta

Estas en el tema de problemas al ahcer una consulta en el foro de PHP en Foros del Web. hola amigos mi problema es el siguiente aunque sencillo pero en fin, como veran no tengo mucho programando en php pero les pido me ayuden ...
  #1 (permalink)  
Antiguo 19/05/2010, 12:02
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
problemas al ahcer una consulta

hola amigos mi problema es el siguiente aunque sencillo pero en fin, como veran no tengo mucho programando en php pero les pido me ayuden todos empezamos asi.

tengo un script en php con el cual quiero mostrar el numero de usuario de un usuario ingresando 1ero su nombre en un formulario asi consulta en una tabla y copia ese numero y me debe mostrar.

1ero lo capturo en un form get, a continuacion el script form action

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>

<form action="Usuarios.php" method="post">
<label for="nombre">Nombre usuario</label>
<input type="text" name="nombre">


</form>
<?php




?>

</body>
</html>

Mando el valor a otro script donde este hace la consulta.

$con = mysql_pconnect($host,$user,$pass);

mysql_select_db($db);

$nombre=$_GET["nombre"];

$query="SELECT iduser FROM usuario WHERE '".$nombre."'= iduser ";
$result=mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result))
{

echo "tareas del usuario", $row['iduser'];




echo "<br />";
}




?>

El problema es qu no me muestra los resultados por lo menos quiero que me muestre el id de usuario para hacer otras cosas y segun otros ejemplos de consultas esta bien.

Por fa ayudenme a encaminarme hice una parte importante pero esta parte ya es para interactuar con usuarios.

Última edición por LordRadium; 20/05/2010 a las 09:44
  #2 (permalink)  
Antiguo 19/05/2010, 12:42
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 18 años, 10 meses
Puntos: 7
Respuesta: problemas al ahcer una consulta

En primer lugar prueba a cambiar:
Código PHP:
$query="SELECT iduser FROM usuario WHERE '".$nombre."'= iduser "
por:
Código PHP:
$query="SELECT iduser FROM usuario WHERE iduser='".$nombre."'; 
Un saludo.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 19/05/2010, 15:38
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Gracias por tu atencion pero no me muestra nada, la ventana sale en blanco, ya hice el cambio que me sugeriste.

Sigo buscandole........................................ .
  #4 (permalink)  
Antiguo 20/05/2010, 09:16
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

He checado si el uso de post es correcto porque pienso que el problema es porque no esta enviando el valor al otro script php para procesarlo.

Alguna ayudita podria venirme bien...............
  #5 (permalink)  
Antiguo 20/05/2010, 09:25
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

veo algunos errores ahí,

1ro lo estas enviando por el método POST, y lo recibes con GET.

2do estas guardando el valor en la variable $telefono, y en tu consulta usas la variable $nombre.

Prueba corrigiendo esas cosas.
  #6 (permalink)  
Antiguo 20/05/2010, 09:51
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

<?php session_start();



$con = mysql_pconnect($host,$user,$pass);

mysql_select_db($db, $con);

$nombre=$_POST["nombre"];






$query="SELECT iduser FROM usuario WHERE nombre=".$nombre;
$result=mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result))
{

echo "tareas del usuario", $row['iduser'];




echo "<br />";
}




?>

sorry lo primero que me dijiste fue un error de dedo, pero ya hice esto corregi algunos problemas y esta funcionando, lo 1ero que hice para hacerlo con orden fue verificar que mi script con el que hago la consulta si hace la tarea y si la hace, vi mis errores actualice y empezo a funcionar bien, ahora voy a tomar ese valor que necesito para consultar en otra tabla otra informacion que necesito mostrar.

gracias.

Quisiera no cerrar todavia este tema por si necesito hacer otras preguntas.

saludos....................
  #7 (permalink)  
Antiguo 20/05/2010, 12:55
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Hola otra vez aqui molestando.

bueno ya vi que si funciona pero estoy tratando de que el valor iduser se guarde en otra variable y hacer una consulta en otra tabla para asi obtener de esa tabla los mensajes guardados por el usuario, lo intente y me mando errores por favor ayudenme.

$query="SELECT iduser FROM usuario WHERE nombre=".$nombre;
$result_user = mysql_query($query);
$user = mysql_fetch_array($result_user);
$sqlstr = "SELECT mensaje, estado FROM mensajes WHERE iduser=".$user;

//$result = mysql_query($sqlstr);






$result=mysql_query($query) or die(mysql_error());



while($row = mysql_fetch_array($result))
{

echo "Numero de Usuario ";
echo "<br />";
echo $row['iduser'];
echo "Nombre del Usuario ";
echo "<br />";

echo $row['nombre'];

echo "Apellido ";
echo "<br />";

echo $row['apellido'];


echo $row['mensaje'];

echo "<br />";
}




?>
  #8 (permalink)  
Antiguo 20/05/2010, 16:54
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

bueno decidi usar inner join pero el browser me manda un mensaje de error, quiero saber si se puede usar inner join con WHERE en la misma sentencia, mi objetivo es lograr que se muestren los mensajes del usuario que se guardaron en la tabla mensajes.

a continuacion lo que estoy haciendo.

$query="SELECT iduser, nombre,apellido, tarea FROM usuario WHERE nombre='".$nombre."' inner join mensaje on mensaje.iduser=usuario.iduser";

pero me manda un mensaje de error.
  #9 (permalink)  
Antiguo 20/05/2010, 17:15
fiu
 
Fecha de Ingreso: diciembre-2006
Ubicación: Barcelona
Mensajes: 128
Antigüedad: 17 años, 4 meses
Puntos: 8
Respuesta: problemas al ahcer una consulta

creo que el tema va asi:

-el join va antes del where, donde las tablas

-si usas un join es para unir tablas, asi que debes ponerle a todos los campos el nombre de tabla antes pa no confundir nombre iguales.

seria mas bien así:

SELECT usuario.iduser, usuario.nombre, usuario.apellido, usuario.tarea
FROM usuario INNER JOIN mensaje ON usuario.iduser=mensaje.iduser
WHERE ....
  #10 (permalink)  
Antiguo 21/05/2010, 08:23
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

hice esto pero me manda un error de sintaxis, ahora no con el inner join si no con el where, debo encontrar el problema, pero segun mi idea si funciona? o hay otra forma de hacer esto.

$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido FROM usuario INNER JOIN mensajes on mensajes.iduser=usuario.iduser , mensajes.estado=mensajes.iduser WHERE nombre='".$nombre."'";

Última edición por LordRadium; 21/05/2010 a las 08:46
  #11 (permalink)  
Antiguo 21/05/2010, 08:28
fiu
 
Fecha de Ingreso: diciembre-2006
Ubicación: Barcelona
Mensajes: 128
Antigüedad: 17 años, 4 meses
Puntos: 8
Respuesta: problemas al ahcer una consulta

en el where tambien debes indicar la tabla "WHERE usuario.nombre='".$nombre."2";
y el ", tarea.estado=tarea.iduser" esta dentro del FROM a menos que hagas otro join (que no haria falta) tambien dara error creo.
  #12 (permalink)  
Antiguo 21/05/2010, 13:01
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

me sigue mandando error de sintaxis

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.iduser WHERE usuario.nombre=usuario.'fulano' at line 1
  #13 (permalink)  
Antiguo 21/05/2010, 15:04
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

ya resolvi el problema, ya funciiona, ahora lo que voy a intentar es con una condicional guardar los mensajes guardados por el mismo usuario para otra persona.

lo podria hacer mostrando otra tabla nada mas para eso pero lo que quiero hacer es que en la misma tabla donde estoy mostrando esos mensajes, crear una fila donde se guarden los mensajes a otra persona y si no hay en la fecha indicada
  #14 (permalink)  
Antiguo 24/05/2010, 08:29
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Hola amigos necesito un poco de ayuda, el script en cuestion lo quiero hacer para consultar 3 tablas pero no se como hacerlo con una instruccion, estoy tratando de usar una instruccion INNER JOIN pero me da error, porfavor necesito una ayudita en esto.
  #15 (permalink)  
Antiguo 24/05/2010, 09:08
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

uso esto para 3 tablas relacionadas, las tablas estan relacionadas con iduser

$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, mensaje.mensaje, mensaje.estado mensaje_tercero.mensaje, mensaje_tercero.estado FROM usuario INNER JOIN mensaje on usuario.iduser=mensaje.iduser INNER JOIN mensaje_tercero mensaje_tercero.mensaje, mensaje_tercero.estado FROM mensaje_tercero WHERE usuario.nombre='".$nombre."'";

Última edición por LordRadium; 24/05/2010 a las 09:38
  #16 (permalink)  
Antiguo 24/05/2010, 09:27
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: problemas al ahcer una consulta

y cual es el error que te da???

Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #17 (permalink)  
Antiguo 24/05/2010, 09:42
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

tienes un error en tu consulta

Código:
$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, 
mensaje.mensaje, mensaje.estado mensaje_tercero.mensaje, 
mensaje_tercero.estado FROM usuario INNER JOIN mensaje on 
usuario.iduser=mensaje.iduser INNER JOIN mensaje_tercero 
mensaje_tercero.mensaje, mensaje_tercero.estado FROM mensaje_tercero 
WHERE usuario.telefono='".$telefono."'";
Después del INNER JOIN tienes que poner la condición a cumplir, mas o menos asi:

Código:
$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, 
mensaje.mensaje, mensaje.estado mensaje_tercero.mensaje, 
mensaje_tercero.estado FROM usuario INNER JOIN mensaje on 
usuario.iduser=mensaje.iduser INNER JOIN mensaje_tercero on 
mensaje_tercero.idmensaje = mensaje.idmensaje WHERE 
usuario.telefono='".$telefono."'";
Tienes que cambiar idmensaje por el identificador que uses para relacionar mensaje con mensaje_tercero
  #18 (permalink)  
Antiguo 24/05/2010, 10:49
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Gracias si lo encontre, pero que crees no me gusto como queda la tabla, asi que mejor le hago otra cosa diferente, por ejemplo en vez de una tabla general, quiero mostrar 2 una tabla donde se muestren los mensajes para uno mismo y la otra para los terceros, el problema es que el valor que capturo desde post no se si sea posible usarlo dos veces en diferentes consultas, pero las dos tablas son muy similares.

gracias por su ayuda.........................................
  #19 (permalink)  
Antiguo 24/05/2010, 13:05
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

ahora lo que estoy haciendo es una consulta para mostrar los mensajes guardados en fechas especificas, por ejemplo los de hoy

uso esta instruccion pero no se si se puede usar WHERE dos veces o tengo que usar otra relacion

$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, mensaje.mensaje, mensaje.estado, mensaje.fecha_notif FROM usuario INNER JOIN mensaje on usuario.iduser=mensaje.iduser WHERE usuario.nombre='".$nombre."'AND WHERE DATE_SUB(CURDATE(),INTERVAL 0 DAY) <= hora";

gracias por su ayuda............................
  #20 (permalink)  
Antiguo 25/05/2010, 09:27
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Hola amigos antes de terminar esto tengo una duda, al codigo anterior le quiero agregar una funcion donde el usuario pueda elegir los mensajes de una fecha especifica por ejemplo un form donde capture la fecha y asi mostrar los mensajes que entraron en esa fecha

ya se hacer la consulta para que me muestre por ejemplo los mensajes del dia

$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, mensaje.mensaje, mensaje.estado, mensaje.fecha_out, mensaje.fecha_in FROM usuario INNER JOIN mensaje on usuario.iduser=tarea.iduser WHERE usuario.nombre='".$nombre."'AND DATE_SUB(CURDATE(),INTERVAL 0 DAY)<= fecha_in";

gracias por su ayuda.....................................
  #21 (permalink)  
Antiguo 25/05/2010, 09:41
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

Tu duda es como hacer una consulta para ver los mensajes de una fecha especifica?

Bueno si ese es el caso, podrías simplemente comparar la fecha de la BD con la fecha insertada por el cliente.

Código:
$query="SELECT * FROM tabla WHERE fecha=' ".$_POST['fecha']." ' ";
  #22 (permalink)  
Antiguo 25/05/2010, 10:23
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Gracias , eso lo se, mi duda es que desde el post como puedo hacer que el form tenga un formato especifico para que el usuario no introduzca otra cosa diferente a una fecha.
  #23 (permalink)  
Antiguo 25/05/2010, 10:30
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

ahhh ok, te recomiendo que uses 3 <select> para que el usuario pueda seleccionar la fecha, asi no habra problemas de formato ni de fechas errones como 31 de febrero, etc.

Y que el select que muestra los meses, rellene el select de los días, para que así solo pueda seleccionar los días validos de acuerdo al mes que seleccione.

También lo podrías hacer con 3 campos de texto, y verificas que solo se ingresen números,

y me imagino que igual se puede con 1 solo campo y usas expresiones regulares para validarlo.
  #24 (permalink)  
Antiguo 25/05/2010, 12:09
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Ok entendi, nada mas que con expresiones estoy un poco peleado pero las tengo que retomar, mientras encuentro esto, tengo una duda un poco mas grande pero no tanto, jajajaja

miren estoy tratando de usar un valor que estoy usando en el script principal

$nombre=$_POST["nombre"];

este lo uso en la consulta que ya mostre pero quiero usarlo en otro script para hacer la consulta de la fecha que estoy haciendo. ejemplo

<form action="mostrar_mensajes_fecha_especifica.php" method="post">
<label for="Fecha">Fecha</label>
<input type="text" name="fecha">

<input type="submit" />

</form>

Aqui mando la fecha a otro script php donde se muestran los mensajes solo de esa fecha.

Lo que no se es como puedo usar el valor guardado en nombre otra vez en otro script.

gracias por su ayuda................
  #25 (permalink)  
Antiguo 25/05/2010, 12:51
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

1ero estoy viendo si sirve mi script pero me manda el siguiente mensaje

Query was empty

aqui la consulta

$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, mensaje.mensaje, mensaje.estado, mensaje.fecha_notif, mensaje.dati FROM usuario INNER JOIN mensaje on usuario.iduser=mensaje.iduser WHERE usuario.nombre='".$nombre."' AND dati='".$fecha."'";


la variable fecha la obtengo con un post desde un form, pero el problema es que en mi base de datos tambien guardo la hora de la siguiente forma ejemplo: 2010/05/06 13:00:00

como puedo hacer la consulta sin tomar en cuenta la hora para que pueda ver solo los mensajes de esa fecha.
asi deberia entrar

2010/05/06
gracias, esto esta quedando, pronto podre pasar a los detalles....
  #26 (permalink)  
Antiguo 26/05/2010, 07:10
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

q tal LordRadium,

puedes usar LIKE, para comparar la fecha

Código:
$query="SELECT usuario.iduser, usuario.nombre, usuario.apellido, 
mensaje.mensaje, mensaje.estado, mensaje.fecha_notif, mensaje.dati 
FROM usuario INNER JOIN mensaje on usuario.iduser=mensaje.iduser 
WHERE usuario.nombre='".$nombre."' AND dati LIKE '".$fecha."%' ";
  #27 (permalink)  
Antiguo 26/05/2010, 07:13
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 8 meses
Puntos: 87
Respuesta: problemas al ahcer una consulta

Cita:
Iniciado por LordRadium Ver Mensaje

miren estoy tratando de usar un valor que estoy usando en el script principal

$nombre=$_POST["nombre"];

este lo uso en la consulta que ya mostre pero quiero usarlo en otro script para hacer la consulta de la fecha que estoy haciendo. ejemplo

<form action="mostrar_mensajes_fecha_especifica.php" method="post">
<label for="Fecha">Fecha</label>
<input type="text" name="fecha">

<input type="submit" />

</form>

Aqui mando la fecha a otro script php donde se muestran los mensajes solo de esa fecha.

Lo que no se es como puedo usar el valor guardado en nombre otra vez en otro script.

gracias por su ayuda................
Para esto puedes usar un campo oculto para enviar el valor en el formulario

Código PHP:
<input type="hidden" name="nombre" value="$nombre"
  #28 (permalink)  
Antiguo 26/05/2010, 11:03
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: problemas al ahcer una consulta

Gracias quique por tu ayuda si funciono

Etiquetas: Ninguno
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 20:52.