Foros del Web » Programando para Internet » PHP »

Ayuda para mostrar registros duplicados

Estas en el tema de Ayuda para mostrar registros duplicados en el foro de PHP en Foros del Web. Hola saludos a todos, estoy desarrolnado una consulta en donde debo mostrar el registro duplicado de un numero de unidad de vehiculo, a traves de ...
  #1 (permalink)  
Antiguo 12/09/2009, 15:18
 
Fecha de Ingreso: junio-2008
Ubicación: Maracay
Mensajes: 52
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Ayuda para mostrar registros duplicados

Hola saludos a todos, estoy desarrolnado una consulta en donde debo mostrar el registro duplicado de un numero de unidad de vehiculo, a traves de una consulta que consegui en los posts del foro de mysql, la cual funciona bien, pero si aplico el uso de la variable incrustada en la consulta no se muestran resultados, la tabla es ésta:

| id | unidadv | fecha |
+----+----------------+--------------------+
| 1 | 9005353 | 2009-08-08 |
| 2 | 9005353 | 2009-08-17 |
| 3 | 9005353 | 2009-08-24 |
| 4 | 9005353 | 2009-09-06 |
| 5 | 9005354 | 2009-09-08 |
| 6 | 9005354 | 2009-09-12 |


lo cierto es que si se busca con un numero como el 9005353 cuyo valor es de la variable $txtUnidad:

el resultado deberia ser este aplicandole el valor de la variable en la consulta:

| id | unidadv | fecha |
+----+----------------+--------------------+
| 1 | 9005353 | 2009-08-08 |
| 2 | 9005353 | 2009-08-17 |
| 3 | 9005353 | 2009-08-24 |
| 4 | 9005353 | 2009-09-06 |


el codigo es este:

Código PHP:
<?php include ('conexion_bd.php');
$link=Conectarse();
$txtUnidad$_GET['txtUnidad'];


$consulta1="SELECT * FROM formvehiculo WHERE unidadv='$unidad' In (SELECT unidadv FROM formvehiculo As Tmp GROUP BY unidadv HAVING Count(unidadv) > 1) ORDER BY unidadv='$txtUnidad'"

$veh=mysql_query($consulta1,$link)or die( "Error en consulta1: $consulta1, error: " mysql_error() ); ?> 

       <table align="center" width="425" border="1" cellspacing="0" cellpadding="0">
       <tr>
       <td width="41" bordercolor="#4BACC6" align="center" bgcolor="#4bacc6"  class="Estilo1">Id</td>
       <td width="100" bordercolor="#4BACC6"  bgcolor="#4bacc6" align="center" class="Estilo1">Unidad #</td>
       <td width="184" bordercolor="#4BACC6" bgcolor="#4bacc6" align="center" class="Estilo1">Fecha de Revisi&oacute;n</td>
       <td width="100" bordercolor="#4BACC6"  bgcolor="#4bacc6" align="center" class="Estilo1">Mostrar</td>
       </tr>
         
<?
if($row=mysql_fetch_array($veh)){
         
         echo      
"<tr>";
         echo      
"<td width=\"41\" bordercolor=\"#4BACC6\" align=\"center\" class=\"Estilo2\">".$row['id']."</td>";
         
$idv=$row['id'];
         echo      
"<td width=\"100\" bordercolor=\"#4BACC6\" align=\"center\" class=\"Estilo2\">".$row['unidadv']."</td>";
         echo      
"<td width=\"184\" bordercolor=\"#4BACC6\" align=\"center\" class=\"Estilo2\">".$row['fecha']."</td>";
         echo      
"<td width=\"100\" bordercolor=\"#4BACC6\" align=\"center\" class=\"Estilo2\"><input type=\"button\" name=\"btnAccion\" value=\"Ver/Imprimir\" onClick=\"window.open('result_vehiculo.php?id=".$id."&idv=".$idv."')\" /></td>";
         echo      
"</tr>";
        
echo 
"<div align=\"center\"><input name=\"btnAccion\" type=\"button\" value=\"Regresar\" onClick=\"window.location='/sicruv/form_busqueda.php'\"></div>";
          }
          
else
          {     echo 
"<div align=\"center\">NO SE ENCONTRARON RESULTADOS<br><br><br><br></div>";
       echo 
"<div align=\"center\"><input name=\"btnAccion\" type=\"button\" value=\"Regresar\" onClick=\"window.location='/buscar_rev.php'\"></div>";   }


?>
</table>
Bueno espero agradecer sus comentarios y ayuda, de verdad no tenido suerte con este problema, de antemano gracias.

Última edición por DjKelvim; 12/09/2009 a las 16:50
  #2 (permalink)  
Antiguo 12/09/2009, 15:26
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Ayuda para mostrar registros duplicados

trata de usar $_POST en lugar de $_GET
Cita:
$txtUnidad= $_GET['txtUnidad'];
y ponle un echo a la consulta para ver que es lo que busca:
Cita:
$consulta1="SELECT * FROM formvehiculo WHERE unidadv='$unidad' In (SELECT unidadv FROM formvehiculo As Tmp GROUP BY unidadv HAVING Count(unidadv) > 1) ORDER BY unidadv='{$txtUnidad}'"; //

echo $consulta1;
exit();
  #3 (permalink)  
Antiguo 12/09/2009, 15:45
 
Fecha de Ingreso: junio-2008
Ubicación: Maracay
Mensajes: 52
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Ayuda para mostrar registros duplicados

nonpublic en el formulario lo cambié a method post para recibir la variable en el codigo en cuestion como me dices y cambie la variabla a $_POST: y ahora lo que muestra la consulta en el echo $consulta1; es esto:

SELECT * FROM formvehiculo WHERE unidadv='9005353' In (SELECT unidadv FROM formvehiculo As Tmp GROUP BY unidadv HAVING Count(unidadv) > 1) ORDER BY unidadv='9005353'

NO SE ENCONTRARON RESULTADOS

Última edición por DjKelvim; 12/09/2009 a las 15:57 Razón: la variable le falto un detalle ahora si muestra el valor en la consulta
  #4 (permalink)  
Antiguo 12/09/2009, 15:54
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Ayuda para mostrar registros duplicados

postea tu formulario, porque no esta recibiendo ningun valor la variable $txtUnidad
  #5 (permalink)  
Antiguo 12/09/2009, 16:01
 
Fecha de Ingreso: junio-2008
Ubicación: Maracay
Mensajes: 52
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Ayuda para mostrar registros duplicados

arregle un detalle y la consulta cambió pero sin mostrar resultados.

el formulario es este:

<form action="mostrartodos.php" method="POST">
<input maxlength="7" size="7" name="txtUnidad" type="text">
<input name="submit" value="Buscar" type="submit" >


revisa mi repuesta anterior de nuevo y veras el cambio que hice

Última edición por DjKelvim; 12/09/2009 a las 16:34
  #6 (permalink)  
Antiguo 12/09/2009, 16:28
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Ayuda para mostrar registros duplicados

porque tienes 2 lineas con lo mismo?
Cita:
<input name="submit" value="Buscar"
type="submit">
  #7 (permalink)  
Antiguo 12/09/2009, 16:33
 
Fecha de Ingreso: junio-2008
Ubicación: Maracay
Mensajes: 52
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Ayuda para mostrar registros duplicados

Cita:
Iniciado por nonpublic Ver Mensaje
porque tienes 2 lineas con lo mismo?
Ah no disculpa eso fue copiando el codigo que se me colo el input 2 veces pero realmente ese no es el problema hermano
  #8 (permalink)  
Antiguo 14/09/2009, 14:28
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Ayuda para mostrar registros duplicados

Cita:
WHERE TRIM(unidadv)='$unidad'
Esta variable no la encuentro en ninguna parte del codigo que posteas. De todas formas, prueba con un TRIM en tu consulta porque puede que estes almacenando la informacion con espacios en blanco y logicamente las cadenas no van a ser iguales.

Prueba con esta consulta:
Cita:
$consulta1="SELECT * FROM formvehiculo WHERE TRIM(unidadv)='{$txtUnidad}' In (SELECT unidadv FROM formvehiculo As Tmp GROUP BY unidadv HAVING Count(unidadv) > 1) ORDER BY unidadv='{$txtUnidad}'";
  #9 (permalink)  
Antiguo 15/10/2009, 01:53
(Desactivado)
 
Fecha de Ingreso: octubre-2009
Mensajes: 4
Antigüedad: 14 años, 6 meses
Puntos: 0
Amigos como hago para mostrar lo registros de mi categoria

mis estimados deseo mostrar los registros de mi categoria por numero id
tengo dos tablas una es categoria y otra es nombres
en la tabla categoria tengo dos campos que es idcat y nombre
y en la tabla nombre tengo dos campos id , nombre y idcat que biene de la relacion entre losdos tablas... quiero hacer la consulta para mostrar los nombres que esta registrado en dicho categoria .. ver los registros de cada idcat..

algo asi esta mi codigo.


<?php
include("conex.php");
$link=Conectarse();

$mlist = mysql_query("SELECT * FROM nombres WHERE idcat=". $_REQUEST["cod"].";",$link);

$listar=mysql_fetch_array($mlist);
echo $listar["nombre"];



?>
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 14:48.