Foros del Web » Programando para Internet » PHP »

Error con Query en mi base de datos

Estas en el tema de Error con Query en mi base de datos en el foro de PHP en Foros del Web. Estoy haciendo de proyecto una encuesta y necesito que me muestre todas las encuestas que tenga registradas pero cada una en una tabla distinta con ...
  #1 (permalink)  
Antiguo 22/04/2008, 16:59
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años
Puntos: 0
Error con Query en mi base de datos

Estoy haciendo de proyecto una encuesta y necesito que me muestre todas las encuestas que tenga registradas pero cada una en una tabla distinta con sus respuestas consecutivas.
Pero lo que hace ahora es mostralo revuelto en una misma tabla, he probado de todo y nada.
P.D: La llamada en el query de idenc es la que enlaza con el id de la encuesta que mas de uno ma dixo que el fallo esta ahi

Este es el codigo que tengo:

verencuestas.php
Código PHP:
<?
session_start
();
?>
<html><head><title>Usuarios registrados</title></head>
<body bgcolor=#000000 text=#00ff00 alink=#ffff00 vlink=ffcdac link=#00ff00>
<h3><center><tt><i>La lista de las encuestas</i></tt></center></h3>
<center>ID<------------------------>PREGUNTA/RESPUESTA<------------------------>USUARIO/VOTOS</center>
<?
$base
="proyecto";
$tabla="encuestas";
$tabla2="respuestas";
$conexion=mysql_connect("host","usuario","password");
mysql_select_db($base,$conexion);

$resultadomysql_query("SELECT id, pregunta, usuario FROM $tabla" ,$conexion);
$resultado2mysql_query("SELECT idenc, texto, votos FROM $tabla2" ,$conexion);
echo 
"<table height=200 width=60% align=center border=2>";
while (
$registro mysql_fetch_row($resultado)){
echo 
"<tr>";
foreach(
$registro as $clave){
echo 
"<td>",$clave,"</td>";
}
}
while (
$registro2 mysql_fetch_row($resultado2)){
echo 
"<tr>";
foreach(
$registro2 as $clave2){
echo 
"<td>",$clave2,"</td>";
}
}
echo 
"</table>";
?>
<br>
<center>
<a href='admin.php' target="principal"><img src="volver.bmp" heigth="45" width="90" border="0"></a><p>
</center>
<br><br><br>
</body>
</html>
  #2 (permalink)  
Antiguo 22/04/2008, 17:16
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: Ayuda xfavor es urgente!!!

haber para ese tipo de consultas debes tener un id asociado en ambas tablas no es asi... si no no hay forma de que una tabla se lleve con la otra bueno...

tu tienes...
Código PHP:
$resultadomysql_query("SELECT id, pregunta, usuario FROM $tabla" ,$conexion);
$resultado2mysql_query("SELECT idenc, texto, votos FROM $tabla2" ,$conexion); 
y mas abajo un while para cada una abiamente estas envian a gusto los informes ya que no hay niuna consulta que diga que datos en especifico traer me refiero a un WHERE ademas podrias simplificar si tiene ids asociado a una sola query digamos algo como

Código PHP:
$resultadomysql_query("SELECT tabla.id, tabla.pregunta, tabla.usuario,  tabla2.idenc, tabla2.texto, tabla2.votosFROM $tabla, $tabla2 WHERE tabla.id = tabla2.id" ,$conexion); 
digamos seria la manera correcta de lo contrario hay error al crear tus tablas :º

si tienes mas dudas consultas
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 22/04/2008, 22:07
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Ayuda xfavor es urgente!!!

Hay una Funcion Mysql llamada GROUP BY ejemplo

SELECT [columnas] FROM [tabla] GROUP BY [columna]
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #4 (permalink)  
Antiguo 22/04/2008, 22:46
Avatar de ramzax200  
Fecha de Ingreso: noviembre-2003
Mensajes: 172
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Ayuda xfavor es urgente!!!

yo lo hago de la siguiente forma, funciona aunque creo que no es la ideal :p


Código PHP:
$sql_preguntas=mysql_query("select id, pregunta, usuario FROM $tabla");
$num_preguntas=mysql_numrows($sql_preguntas);
for(
$a=0;$a<$num_preguntas;$a++){
   
$id_pregunta=mysql_result($sql_preguntas,$a,0);
   
$pregunta=mysql_result($sql_preguntas,$a,1);
   
$usuario=mysql_result($sql_preguntas,$a,2);
   echo 
"$pregunta<br>";//imprimimos la pregunta
   //ahora sacamos los mensajes y votos
   
$sql_respuestas=mysql_query("select idenc, texto, votos FROM $tabla2 ");
   
$num_votos=mysql_numrows($sql_respuestas); //sacamos cuantos votos hay
   
for($b=0;$b<$num_votos;$b++){
      
$idenc=mysql_result($sql_respuestas,$b,0);
      
$texto=mysql_result($sql_respuestas,$b,1);
      
$votos=mysql_result($sql_respuestas,$b,2);
      echo 
"$idenc $texto $votos<br>";//imprimimos mensajes y voto

   
}


  #5 (permalink)  
Antiguo 24/04/2008, 07:54
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años
Puntos: 0
Re: Ayuda xfavor es urgente!!!

Gracias por la contestacion kaninox pero aun asi conforme me has dixo, me muestra los datos desordenados.
Y e probado con ORDER BY , GROUP BY y nada.
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 04:31.