Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/06/2009, 11:36
Avatar de jenusys
jenusys
 
Fecha de Ingreso: diciembre-2008
Ubicación: Ahí mismo.
Mensajes: 216
Antigüedad: 15 años, 4 meses
Puntos: 11
Respuesta: ¡Hombre por Dios! ¡No se pudo con PHP!

Como no hubo NADIE que me ayudara y a manera de aporte, voy a poner el código de un sistema mucho más potente que el array unique( puesto que éste realmente hace que no se repitan arrays por mucho que éstos se repitan (valga la redundancia). Si alguien desea aportar o "acortar" éste código sería de gran ayuda para los que hemos "fregado" con ésto del UNIQUE. Aquí les va para la salvación de la humanidad:

¡GRACIAS A MI MISMO!

<script type="text/javascript">

function barras(campo){
var z = 0;
var primeraMitad = "";
var segundaMitad = "";
for(var i = 0; i < campo.value.length; i++){
z++;
if(z == 7){
z = 0;
if(campo.value.charAt(i + 1) != "/"){
i++;
primeraMitad = campo.value.substring(0, i) + "/";
if(i + 1 < campo.value.length){
segundaMitad = campo.value.substring(i);
}
campo.value = primeraMitad + segundaMitad;
primeraMitad = "";
segundaMitad = "";
}else{
i++;
}
}
}
}

</script>

<?php
//Recogemos los valores del post
$facturas = $_POST["facturas"];

// Separamos factura por factura

if (!empty($facturas))
{
$arrayfac = explode("/", $facturas);

$a=0;
$b=sizeof($arrayfac);

while($b>=$a) {

$c=0;

while($b>=$c) {

if ($arrayfac[$a]==$arrayfac[$c]) {

$arrayfac[$a]=$arrayfac[$a].R;

$ult = $arrayfac[$a];
$find = substr($ult, 0, 7);

} else if ($find==$arrayfac[$c] && !strpos($arrayfac[$c], "R")) {

echo "array $arrayfac[$c] eliminado<br>";

//Elimino el array repetido
//unset($arrayfac[$c]);
$arrayfac[$c]=$arrayfac[$c].N;

}

$c++;

}

$a++;

}
}

//Para el ECHO posterior
for ($contar=0;$contar<=sizeof($arrayfac);$contar++)
{
if (!empty($arrayfac[$contar]))
{
$aunir = $arrayfac[$contar]."/";


//Y finalmente elimino los arrays indeseados
//Nótese la diferencia entre STRPOS y STRRPOS
if (strrpos($aunir, "N")) {$aunir="";}

$unidos = $unidos.$aunir;

//Y elimino la "R"
$unidos = str_replace('R','',$unidos);

}
}
echo $unidos;
?>

<form method="post" action="norepite.php">
<input name="facturas" type="text" id="barrita" onkeyup="barras(this)" onchange="barras(this)">
<input type="submit" name="boton" value="Enviar facturas">
</form>