48 Copiar vinculo para compartir de forma automática en el curso de LARAVEL (PHP y MySql) FullStack
Duración: 12 min
Módulo: 🔗 Opciones de Compartición y Privacidad
Lección 6 de
7
Descripción
🔗 Lección 48: Copiar Vínculo para Compartir de Forma Automática
Este capítulo finaliza el módulo "Compartir Archivos" implementando la funcionalidad de copiar automáticamente el enlace para los archivos en estado público, lo cual permite compartirlos fácilmente con usuarios externos.
🛠️ Implementación de la Función de Copiado
El instructor utiliza la librería JavaScript clipboard.js para lograr la copia automática del enlace al hacer clic en un botón:
- Instalación de la Librería:
- Se utiliza un CDN (Content Delivery Network) para incluir el archivo JavaScript minificado de clipboard.js en la plantilla principal (layout) del proyecto [01:48].
- Configuración del Script:
📝 Generación y Copia del Enlace
Dentro del modal "Compartir", la implementación se divide en dos elementos clave:
- Campo del Enlace (Input):
- Se crea un campo <input> de tipo text que contiene el URL completo del archivo público. Este URL se genera utilizando la función asset() de Laravel: asset('storage/' . $archivo->carpeta_ID . '/' . $archivo->nombre) [08:00].
- Se le asigna un ID único concatenando el prefijo Foot (o similar) con el ID del archivo (Foot-{archivo_ID}) [08:46].
- Botón "Copiar Enlace":
- El botón recibe el atributo data-clipboard-target, el cual debe apuntar al ID único del campo <input> que contiene el enlace. Esto indica a clipboard.js qué contenido copiar al hacer clic [08:59].
✅ Verificación del Resultado
- La funcionalidad permite al usuario hacer clic en el botón "Copiar Enlace" para un archivo en estado público [09:40].
- El enlace copiado (localhost/sistema/public/storage/...) se puede pegar en cualquier lugar y permite el acceso directo al archivo (imagen, PDF, etc.) sin necesidad de autenticación, confirmando que el archivo está correctamente alojado en el directorio público (storage/public) [08:36].
- Se corrige un error importante donde se debe asegurar que tanto el input como el botón de copiado utilicen un ID único basado en el $archivo->ID para que la función de copiado opere en el archivo correcto y no se confunda entre múltiples elementos [10:35].
Lecciones
⚙️ Configuración e Inicialización
🏗️ Modelos de Datos y Controladores
📁 Gestión y Navegación de Carpetas
🎨 Personalización y Edición de Carpetas
Lección 5. 21 Incorporar Tooltips en las CARPETA en el curso de LARAVEL (PHP y MySql) FullStack
5 min
Lección 6. 22 Menú opción de carpetas de colores en el curso de LARAVEL (PHP y MySql) FullStack
8 min
Lección 7. 23 Actualizar el color de la CARPETA en el curso de LARAVEL (PHP y MySql) FullStack
12 min
Lección 9. 25 Controller colores de las SUBCARPETAS en el curso de LARAVEL (PHP y MySql) FullStack
15 min
📤 Carga y Almacenamiento de Archivos
📄 Listado y Visualización de Archivos
Lección 7. 36 Como hacer un visor VIDEOS Y AUDIOS en el curso de LARAVEL (PHP y MySql) FullStack
10 min
🗑️ Eliminación y Seguridad de Archivos
Lección 5. 41 Como mostrar archivos de manera privada en el curso de LARAVEL (PHP y MySql) FullStack
12 min
🔗 Opciones de Compartición y Privacidad
Lección 4. 46 Mover Archivo de Privado a Público en el Curso FullStack de Laravel (PHP y MySQL)
7 min
Lección 5. 47 Mover el archivo de PÚBLICO a PRIVADO en el curso de LARAVEL (PHP y MySql) FullStack
11 min
🧹 Mantenimiento del Sistema
👑 Roles, Permisos y Panel de Control
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️