68 lines
2.6 KiB
PHP
68 lines
2.6 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Subir Archivo de DNI</title>
|
|
</head>
|
|
<body>
|
|
<h2>Subir Archivo de DNI</h2>
|
|
<form action="" method="post" enctype="multipart/form-data">
|
|
<label for="name">* Nombre:</label><br>
|
|
<input type="text" id="nombre" name="nombre" required><br><br>
|
|
|
|
<label for="email">* Correo Electrónico:</label><br>
|
|
<input type="email" id="email" name="email" required><br><br>
|
|
|
|
<label for="dniFile">* Subir DNI (jpg o pdf, tamaño máximo 5MB):</label><br>
|
|
<input type="file" id="dniFile" name="dniFile" accept=".jpg,.pdf" required><br><br>
|
|
|
|
<input type="submit" value="Enviar" name="submit">
|
|
</form>
|
|
</body>
|
|
</html>
|
|
|
|
<?php
|
|
// Verifica si el formulario ha sido enviado
|
|
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_FILES["dniFile"])) {
|
|
// Nombre y correo electrónico del usuario
|
|
$nombre = $_POST["nombre"];
|
|
$email = $_POST["email"];
|
|
|
|
// Directorio donde se guardarán los archivos subidos
|
|
$directorio_subida = "dni_usuarios/";
|
|
|
|
// Nombre del archivo y ruta de destino
|
|
$nombre_archivo=$_FILES["dniFile"]["name"];
|
|
$nombre_archivo_final = time().'_'.rand(100,999).'_'.$email.'_'.$nombre_archivo;
|
|
$ruta_archivo = $directorio_subida . $nombre_archivo_final;
|
|
|
|
// Tamaño máximo permitido (5MB)
|
|
$tamano_maximo = 5 * 1024 * 1024;
|
|
|
|
// Obtiene la extensión del archivo
|
|
$extension_archivo = strtolower(pathinfo($_FILES["dniFile"]["name"], PATHINFO_EXTENSION));
|
|
|
|
// Array de extensiones permitidas
|
|
$extensiones_permitidas = array("jpg", "jpeg", "pdf");
|
|
|
|
// Verifica si el archivo es una extensión permitida y no excede el tamaño máximo
|
|
if (in_array($extension_archivo, $extensiones_permitidas) && $_FILES["dniFile"]["size"] <= $tamano_maximo) {
|
|
// Verifica si hubo algún error durante la subida del archivo
|
|
if ($_FILES["dniFile"]["error"] === 0) {
|
|
// Intenta mover el archivo al directorio de destino
|
|
if (move_uploaded_file($_FILES["dniFile"]["tmp_name"], $ruta_archivo)) {
|
|
echo "El archivo " . htmlspecialchars($nombre_archivo) . " ha sido subido exitosamente.";
|
|
|
|
} else {
|
|
echo "Lo siento, hubo un error al subir el archivo.";
|
|
}
|
|
} else {
|
|
echo "Error: " . $_FILES["dniFile"]["error"];
|
|
}
|
|
} else {
|
|
echo "Lo siento, solo se permiten archivos en formato JPG o PDF con un tamaño máximo de 5MB.";
|
|
}
|
|
}
|
|
?>
|