El elemento para subir archivos parece no comprobar el tamaño del archivo a subir. ¿Puedo comprobar el tamaño del archivo y evitar que según el tamaño no se guarde en el servidor?

A tal propósito, copie el siguiente código en Avanzado > más opciones > Enviar piezas >  Inicio del envío: Personalizado 

$this->execPieceByName('ff_InitLib');

// registrar el nombre del elemento de subida de datos
$filename = ff_getSubmit('upload');

// comprobar el tamaño del archivo a subir
if ($filename && filesize($filename) >= 1048576) { // 1MB
// generar mensaje personalizado de error
$this->status = _FF_STATUS_UPLOAD_FAILED;

// borrar el archivo subido
unlink($filename);

header("Location: URLtoForm&error=true");
}

 

Cambie URLtoForm por la url que enlaza con la primera página de su formulario. No cambie la parte de '&error=true'


Copie este código en Piezas del formulario > Antes del formulario - personalizado:

$this->execPieceByName('ff_initLib');

$show_error = JRequest::getVar('filesize');

if ($show_error == 'true') {
echo '<script type="text/javascript">alert("Mensaje de error")</script>;';
}

Cambie 'Mensaje de error' por el mensaje de error que desea que se muestre.


Ahora, si el archivo subido supera el límite definido, el formulario se redireccionará a su primera página y mostrará un mensaje de error.

Tenga en cuenta que esto no funciona con formularios en iFrames!

Además de esta solución particular con código PHP, también hay muchas otras posibles usando Javascript. Puede encontrar otro ejemplo aquí http://stackoverflow.com/questions/3717793/javascript-file-upload-size-validation.

Descuentos actuales

Suscripción todos extensiones

Summer Sale! All subscriptions at a special price!


Sin límite de dominios!. Incluye todas nuestras extensiones presentes y futuras para Joomla!®, plantillas para Joomla!®   adquiriendo la suscripción de por vida tiene acceso a todas nuestras plantillas.

Más información aquí

Descuento por componentes terceros - 25% Off

Nosotros le ayudamos a que no incurra en grandes gastos. Si es nuevo cliente y ha adquirido un constructor de formularios de otro proveedor, obtendrá un 25% de descuento en nuestra suscripción de un año o de por vida.

Cómo recibir el descuento:

Envíenos un correo electrónico a sales@crosstec.org con la evidencia (por ejemplo, un recibo de PayPal) de que a adquirido otra extensión para formularios y espere a nuestras instrucciones de pago para disfrutar de su suscripción con descuento.

Apoyando a la comunidad Joomla!

Nuestra pasión nos lleva a apoyar a grupos oficiales de usuarios de Joomla! y a organizadores de eventos Joomla! registreados en Joomla.org.

Si planea organizar un evento relacionado con la comunidad Joomla! y necesita cualquiera de nuestros productos, por favor, envíenos un email a info@crosstec.org y recibirá una suscripción de por vida gratuitamente.