Ayuda
Como decirle a un erray que me muestre un registro sin regitros duplicador.
$a[] = "Casa";
$a[] = "Casa";
$a[] = "Arbol";
$a[] = "Arbol";
Nuevo ARRAY
$b[] = "Casa";
$b[] = "Arbol";
Saludos
| |||
Usando por ejemplo la función in_array() .. la cual determina si existe o no un valor en el array q le indicas (equivaldría a recorrer el array y aplicar un condicional sobre el valor del inice q está recorriendo con el que quieres comparar). Código PHP: Un saludo, |
| |||
le fatal un ) antes del } .. revisa el código nuevamente pues lo corregí .. (y cuando digas "me dá error" di que error textual da PHP .. Eso en general ..) Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Mira Cluster, El error emitido és, Parse error: parse error, unexpected '{' in en la linea <? $array_origen[] = "Casa"; $array_origen[] = "Casa"; $array_origen[] = "Arbol"; $array_origen[] = "Arbol"; $array_destino=array(); foreach ($array_origen as $valor){ if (!in_array($valor,$array_destino){ $array_destino[]=$valor; } } // ejemplo Leer el array generado .. foreach ($array_destino as $valor){ echo $valor."<br>"; } ?> |
| |||
Te dije que ya arreglé el código en el mensaje .. Fijate que ya le puse ese ) q me faltó. if (!in_array($valor,$array_destino)){ Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Saludos Cluster, Tengo un pequeño problema, Si pudiera ser que se me pasaran otra vez a variables, para hacerlo con un for $array_origen[] = "Casa"; $array_origen[] = "Casa"; $array_origen[] = "Arbol"; $array_origen[] = "Arbol"; $array_destino=array(); foreach ($array_origen as $valor){ if (!in_array($valor,$array_destino)){ $array_destino[]=$valor; } } // ejemplo Leer el array generado .. foreach ($array_destino as $valor){ echo $valor."<br>"; } Saludos |
| |||
Cita: No entiendo eso de "pasar otra vez a variables" ...Si pudiera ser que se me pasaran otra vez a variables, para hacerlo con un for En términos generales .. Un array lo puedes recorrer con un bucle foreach() o con cualquier otro tipo de bucle accediendo a sus indices .. En tu caso el array q formas tiene indices numericos (auto-numerico) comenzando por el 0 ... Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Pues el $valor[0] no me lo a enontrado sus registros, lo único que me a salido és como $valor. El problema esque lo he hecho sacar de una base dedatos y cuando le digo que me muestre unos registros cuando la condicion sea correcta, arrastrando varios arrays con migo. Código PHP: Ya que solo quiero que me cuando la condicion sea correcta me lo lleve a otras variables para pasarla por email a cada usuario, con su nombre. No se si me has podido entender. Creo que me has dicho que $valor sería igual que $valor[0] y etc.etc. Pero le e puesto un count y un for para mostrarme el $valor. Saludos Última edición por Cluster; 17/03/2003 a las 21:21 |
| ||||
ocupa el maldito boton de PHP que para eso lo tiene el foro ok!!!!!
__________________ DelirioLinux.. Software Libre y tecnología.. php también.. Saludos :arriba: Usuario Linux #198486 y Ubuntu #12791 Gutsy Gibbon |
| |||
Sigo sin entender que estas haciendo .... $valor NO es un array en el ejemplo del foreach() .. el array sin las coincidencias es $array_destino .. y te puse el ejemplo de un bucle foreach() para recorrerlo .. pues es la manera mas rápida y clara para recorrer un array sin estar contando sus elementos que pueda tener .. (acostumbrate a usarlo ..) Solo te digo que de un bucle foreach por ejemplo si necesitas una variable "contador" par usarlo como indice de no se q otra array puedes hacer: Código PHP: Otros detalles .. que tal vez te esten complicando (o por lo menos a mi me asusta ver como lo haces ... ) Usa: Código PHP: El bloque de código q dices "Busca coincidencias" .. No se que es lo q quieres hacer .. Pero desde ya te digo que si ajustases mejor la consulta SQL que estas haciendo (muy simple para lo que se ve que estas haciendo) .. te evitarias MUCHA lógica PHP por medio ... Por ejemplo .. al hacer una consulta SQL tienes el parametro DISTINCT .. con eso muestras SOLO los registros que sean diferentes de una consulta que hagas .. Su uso sería: Código PHP: Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Aunque soy un poco nuevo en esto aunque cometo muchos fallos de programacion, no de sintaxis, el problema es que yo era programador de Basic muchismios años, y la lógica me lleva para otras cosas. Aunque si me comentas que DISTINC me saca las coincidencias sin hacer repeticiones, probare con la función y te comento. Saludos, |
| ||||
Mira lo que quiero hacer, para que lo veas un poco más claro. En el for saco los resultados de mi tabla despues le digo que los que me coincidan con los resultados volver hacer nuevos arrays. Como en el Foro del Web que cuando dejas un mensaje todos los usuarios activos que se han registrado a las preguntas, se les envia el E-mail con el nombre etc.etc., para ello estoy buscando que las otras variables, no solo $valor me lo extraiga, ya que cuando me saque los resultados el $valor sin registros duplicados me lleve los otros arrays pero con la coincidencia del $valor. No se si aún no me e podido explicartelo bien. Saludos |
| ||||
Mira Cluster, $resultado=mysql_query("SELECT DISTINC * FROM $tabla WHERE (Categoria='$Busq' and Subcategoria='$Sub' and IdVenta='$Id')",$conexion); He hecho lo mencionado por ti Cluster de sacar los resultados directamente desde la tabla, hasta aquí todo correcto y me funciona perfecto per me da el error en DISTINC, para sacar los resultados sin resultados iguales. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in preguntar.php on line 304 |
| |||
Lamento llegar tarde a la discucion, pues mysql lo tengo +o-, pero para remover valores duplicado de un array tenemos array_unique(); Mas info... http://www.php.net/manual/es/function.array-unique.php Saludos! |
| |||
Gracias fran86 .. por el detalle de array_unique() ... se me pasó. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |