Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/10/2009, 07:21
Avatar de ale80262
ale80262
 
Fecha de Ingreso: junio-2008
Mensajes: 66
Antigüedad: 18 años, 4 meses
Puntos: 0
consulta array archivos

hola hice un formulario que carga imagenes y una descripcion crea nuevos nuevos elementos input y funciona bien pero mi problema es cuando qeuiro recorrer el array para limitar por peso o por ancho u alto yo habia solucionado el tema de la cantidad (segundo codigo) pongo el codigo

el codigo que genera los elemntos
Código PHP:
<script type="text/javascript">

var 
numero = 0;
// Funciones comunes
c= function (tag) { // Crea un elemento
   
return document.createElement(tag);
}
d = function (id) { // Retorna un elemento en base al id
   
return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
   
return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
   
return evt.srcElement ?  evt.srcElement : evt.target;
}
addField = function () {
   
container = d('subir');
   
   
span = c('SPAN');
   
span.className = 'subir';
   
span.id = 'subir' + (++numero);

   
field = c('INPUT');   
   
field.name = 'archivos[]';
   
field.type = 'file';
   
   
field2 = c('INPUT');   
   
field2.name = 'descripcion[]';
   
field2.type = 'text';
   
   
a = c('A');
   
a.name = span.id;
   
a.href = '#subir';
   
a.onclick = removeField;
   
a.innerHTML = 'Quitar';

   
span.appendChild(field);
   
span.appendChild(field2);
   
span.appendChild(a);
   
container.appendChild(span);
}
removeField = function (evt) {
   
lnk = f(e(evt));
   
span = d(lnk.name);
   
span.parentNode.removeChild(span);
}

</script> 
y con esta funcion me fijo que no envien sin elegir nada y que a partir de las que tiene (es una galeria de un perfil) le limita la cantidad que pueden subir, siendo en el codigo que pongo abajo $t la cantidad.

Código PHP:
<script type="text/javascript">

function cantidad(){
var cu = document.getElementsByName("archivos[]").length;  

if (cu < 1){
alert('vacio seleccione archivo ' + cu);
return false;
}

else if (cu > <? echo $t;?>){
alert('Supera la cantidad permitida');
return false;
}


return true;

}
</script>
Esto funciona bien seguramente se puda mejorar pero funciona por ahora el problema que tengo es que lo quiero es recorrer el el valor archivos[] que viene del formulario
probe con for pero no lo consigo osea pude recorrerlo pero lo que nesecito es que segun su peso o tamaño limitarlo. Probe haciendo un for y mi idea era algo asi ya que vi que con javascript podia obtener el ancho u el alto si es uan imagen
esto dentro de la funcion cantidad de arriba

Código PHP:

for (i=0, cu>1, i++){

if (
cu.width >= 600px){
alert ('es demasiado grande');

}

} 
si alguien puede hecharme una mano como siempre agradecido.

saludos y muchas gracias!!