Foros del Web » Programando para Internet » PHP »

datos repetido

Estas en el tema de datos repetido en el foro de PHP en Foros del Web. Tengo una tabla (datos) que contiene lo suiguiente: rubro-----------provincia-----------ciudad-----------nombre deporte bsas arrecifes pepe deporte santa fe rosario popo agricola bsas pergamino agrotecnica etc yo nesecito ...
  #1 (permalink)  
Antiguo 15/01/2009, 08:31
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
datos repetido

Tengo una tabla (datos) que contiene lo suiguiente:

rubro-----------provincia-----------ciudad-----------nombre
deporte bsas arrecifes pepe
deporte santa fe rosario popo
agricola bsas pergamino agrotecnica

etc

yo nesecito mostrar los datos en una list/menu y si estan repetidos que solo lo muestre una ves o sea yo tengo cuatro lista una para cada filtro de busque y que solo me muestre un sola ves si el dato esta repetido les paso el codigo.

<td align="left"><strong><span class="Estilo6"><span class="Estilo9">Rubro:</span>
<select name="rubro" class="Estilo7" id="rubro" style="background-color:#30405B">
<option value="hh">Elija una opcion...........</option>
<?
require("conectar.php");
$sql = mysql_query("select * from datos");
while($rs=mysql_fetch_array($sql)){
echo "<option value=".$rs['rubro'].">".$rs['rubro']."</option>";
}
?>
</select>
</span></strong></td>
<td align="left"><span class="Estilo7"><span class="Estilo9">Provincia:</span>
<select name="provincia" class="Estilo7" id="provincia" style="background-color:#30405B">
<option value="hh">Elija una opcion...........</option>
<?
require("conectar.php");
$sql = mysql_query("select * from datos");
while($rs=mysql_fetch_array($sql)){
echo "<option value=".$rs['provincia'].">".$rs['provincia']."</option>";
}
?>
</select>
</span></td>
<td align="left"><span class="Estilo10">Ciudad:</span>
<select name="ciudad" class="Estilo7" id="ciudad" style="background-color:#2A384F">
<option value="hh">Elija una opcion...........</option>
<?
require("conectar.php");
$sql = mysql_query("select * from datos");
while($rs=mysql_fetch_array($sql)){
echo "<option value=".$rs['ciudad'].">".$rs['ciudad']."</option>";
}
?>
</select></td>
<td align="left"><span class="Estilo10">Nombre:</span>
<select name="nombre" class="Estilo7" id="nombre" style="background-color:#253146">
<option value="hh">Elija una opcion...........</option>
<?
require("conectar.php");
$sql = mysql_query("select * from datos");
while($rs=mysql_fetch_array($sql)){
echo "<option value=".$rs['nombre'].">".$rs['nombre']."</option>";
}
?>
</select></td>
  #2 (permalink)  
Antiguo 15/01/2009, 08:34
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: datos repetido

es mas simple que con PHP ... solo usa DISTINCT en tu consulta de SQL

Código:
SELECT DISTINCT(*) FROM tabla
por cierto.... crees optimo ¿¿repetir tantas veces lo mismo???

Código:
require("conectar.php");
$sql = mysql_query("select * from datos");
¿apoco no te da problemas??

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/01/2009, 12:27
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: datos repetido

he probado eso ya y no me funciona quizas porque lo ubico mal o plateo mal la linea de codigo yo en el asteristico pongo el nombre de la columna a la que le voy aplicar eso o como se usa si me das un ejemplo con lo que te pase seria mejor.
  #4 (permalink)  
Antiguo 15/01/2009, 12:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: datos repetido

De hecho la consulta correcta es:
Código sql:
Ver original
  1. SELECT DISTINCT * FROM `datos`

Saludos
  #5 (permalink)  
Antiguo 15/01/2009, 17:40
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: datos repetido

bueno eso que me dieron evidente no anda o algo le falta lo e probado solo con un menu select por las didas y no anda la verdad no se que hacer si ahi alguna solucion que me den por favor que nade les agredeceria desde ya muchas gracias aca les pego el codigo de lo ultimo que intente.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Empresas del Norte</title>
<style type="text/css">
<!--
body {
background-image: url();
margin-left: 5px;
margin-top: 5px;
margin-right: 5px;
margin-bottom: 5px;
background-repeat: no-repeat;
}
.Estilo6 {font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #999999; }
.Estilo7 {font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #999999; font-weight: bold; }
.Estilo3 {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
color: #cccccc;
font-weight: bold;
}
.Estilo9 {color: #FFFFFF}
.Estilo10 {font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #FFFFFF; font-weight: bold; }
-->
</style>
</head>

<body>
<span class="Estilo7">
<select name="provincia" class="Estilo7" id="provincia" style="background-color:#30405B">
<option value="hh">Elija una opcion...........</option>
<?
require("conectar.php");
$sql = mysql_query("SELECT DISTINCT (*) FROM datos");
while($rs=mysql_fetch_array($sql)){
echo "<option value=".$rs['provincia'].">".$rs['provincia']."</option>";
}
?>
</select>
</span>
</body>
</html>
  #6 (permalink)  
Antiguo 15/01/2009, 17:48
 
Fecha de Ingreso: septiembre-2008
Mensajes: 152
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: datos repetido

Solo quita los parentesis en la consulta y debe de funcionar

Código PHP:
select distinct from datos 
Y como tip: Prueba las consultas que haces con PHP en mysql y si funciona en mysql esta bien, en tu caso prueba la consulta en mysql tal y como la tienes y veras que no funciona
  #7 (permalink)  
Antiguo 15/01/2009, 18:21
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: datos repetido

e probado como dijiste y no anda hice la consulta en mysql y no anda sera por la vercion que tengo de mysql es la 2.4 que alguirn lo pruebe y me diga si le funciona.
  #8 (permalink)  
Antiguo 15/01/2009, 21:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: datos repetido

2.4? es bastante anterior, la version actual de MySQL recomendada es la 5.0.

Por otro lado la consulta es sin parentesis y te deberia de funcionar correctamente ya que el DISTINCT es precisamente para eso.

Saludos
  #9 (permalink)  
Antiguo 16/01/2009, 04:42
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
De acuerdo Respuesta: datos repetido

No anda y creo que se porque creo que es por la tabla la tabla conforma estos datos :
id-----rubro-----nombre---ciudad-----provincia----postal----mail--pagina--te----imag
22--- Deporte-- Adidas--- Arrecifes---Ba.As.----- 2740 ---- ddd---ddddd-d55--5555
23---Estaciones-YPF-------Pergamino-Ba.As.-----2740------ggg---ggggg-555--5555
21---Agricola-----Agro------Arrecifes ---Bs.As.-----2740-----rrrrr----rrrrrrr--44---4444

tengo esa tabla con esos datos y necesito aplicarle filtro (DISTINCT) a nombre, ciudad provincia, rubro que los datos repetidos solo se muestren una ves.
por ejemplo:

ahi dos empresas que estan en arrecifes yo solo quiero que apareswca una sola ves arrecifes en el list menu que lo uso como buscador.

Espero que se entienda desde ya muchas gracias por todos los que repondieron.
  #10 (permalink)  
Antiguo 16/01/2009, 05:41
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 20 años
Puntos: 48
Respuesta: datos repetido

select distinct ciudad from datos
  #11 (permalink)  
Antiguo 16/01/2009, 06:58
 
Fecha de Ingreso: diciembre-2008
Mensajes: 122
Antigüedad: 15 años, 11 meses
Puntos: 1
e probado eso y no anda ya nose que hacer hasta lo probe como sentencia en mysql....
Alguien que aya renegado con esto y que le encuentre el error porfavor que me diga que ago mal o que problema ahi.

ya e encontrado la solucion que me funcion es la sentencia GROUP BY que agrupa todos los datos repetidos en uno solo esa funciona al pedo gracias a todos por contestar mi consulta desde espero no haber molestado y agradesco a todos.

tabien e probado con la sentencia DISTINCT y anda encontre el error no va el asterisco antes del fro o sea seria asi

SELECT DISTINCT 'nombre_de_columna' FROM 'nombre_de_tabla'

Última edición por GatorV; 19/01/2009 a las 17:06
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:43.