Para crear una nueva carpeta en PHP, puedes usar la función
mkdir(). Para eliminar una carpeta, puedes usar
rmdir(), pero solo funcionará si la carpeta está vacía. Aquí te dejo un ejemplo:
PHP:
// Crear carpeta
if (!file_exists('ruta/carpeta')) {
mkdir('ruta/carpeta', 0777, true);
}
// Borrar carpeta
if (is_dir('ruta/carpeta')) {
rmdir('ruta/carpeta');
}
Primero, con
file_exists y
is_dir, se verifica si la carpeta ya existe antes de intentar crearla o eliminarla para prevenir posibles errores.
IMPORTANTE:
rmdir() solo elimina un directorio si está vacío. Si deseas eliminar un directorio que pueda tener archivos o subcarpetas dentro, necesitarás crear una función o procedimiento más complejo para eliminar primero el contenido antes de eliminar la carpeta. La gestión de archivos y carpetas siempre debe hacerse con precaución para evitar la pérdida de datos.
<?php
session_start();
error_reporting(0);
if(!($conexion = mysqli_connect("localhost", "loquenderus_root", "ML&-^TIBjw5:X@4l")));
mysqli_select_db($conexion,"loquenderus_base_tusubs");
if(!empty($_FILES)){
if(is_uploaded_file($_FILES['file']['tmp_name'])){
$temp_archivo = $_FILES['file']['tmp_name'];
if (!isset($_SESSION['ruta_destino'])) {
$_SESSION['ruta_destino'] = 'upload/'.mt_rand(1,100).bin2hex(random_bytes(mt_rand(5,15))).'.mp4';
}
$ruta_destino = $_SESSION['ruta_destino'];
if (file_exists($ruta_destino)) {
file_put_contents($ruta_destino, file_get_contents($temp_archivo), FILE_APPEND);
} else {
$peso = filesize($temp_archivo) / 1024 / 1024;
$peso = round($peso, 2);
$mochie = mysqli_query($conexion,"SELECT * FROM watch");
$koods = mysqli_num_rows($mochie)+1;
$fornier = bin2hex(random_bytes(mt_rand(4,10)));
$mocheauss = mysqli_query($conexion,"SELECT MAX(hora) AS hora FROM watch limit 0,1");
$guyears = mysqli_fetch_assoc($mocheauss);
$horato=$guyears['hora']+1;
$query_exitosa = mysqli_query($conexion,"INSERT INTO
watch(hora,fecha,waiting,get_id,target,peso,hored,email,newmodevideo) VALUES ('".$horato."','".date('d M Y')."','".mt_rand(1,8).bin2hex(random_bytes(mt_rand(6,10)))."','".mt_rand(1,5).bin2hex(random_bytes(mt_rand(3,10)))."','".mt_rand(1,10).bin2hex(random_bytes(mt_rand(5,10)))."','".$peso."','".date("Y-m-d H:i:s",strtotime($fecha_actual."+ 72 hours"))."','".$_SESSION['email']."','".$ruta_destino."')");
$archivo_movido = move_uploaded_file($temp_archivo, $ruta_destino);
$resultada = mysqli_query($conexion, "SELECT MAX(id) AS max_id FROM watch WHERE email='".$_SESSION['email']."'");
$fiyi = mysqli_fetch_assoc($resultada);
$ultimo_id = $fiyi['max_id'];
if($archivo_movido && $query_exitosa) {
mysqli_query($conexion,"UPDATE watch SET posis='exito' WHERE email='".$_SESSION['email']."' and id='".$ultimo_id."'");
} else {
if(!$archivo_movido){
mysqli_query($conexion,"UPDATE watch SET posis='error al mover archivo' WHERE email='".$_SESSION['email']."' and id='".$ultimo_id."'");
}
if(!$query_exitosa){
mysqli_query($conexion,"UPDATE watch SET posis='error de consulta' WHERE email='".$_SESSION['email']."' and id='".$ultimo_id."'");
}
}
}
if (isset($_POST['resumableChunkNumber']) && isset($_POST['resumableTotalChunks'])) {
$esUltimoFragmento = ($_POST['resumableChunkNumber'] == $_POST['resumableTotalChunks']);
if ($esUltimoFragmento) {
unset($_SESSION['ruta_destino']);
$resultadas = mysqli_query($conexion, "SELECT MAX(id) AS max_id FROM watch WHERE email='".$_SESSION['email']."'");
$fiyis = mysqli_fetch_assoc($resultadas);
$ultimo_ids = $fiyis['max_id'];
mysqli_query($conexion,"UPDATE watch SET terminates='yess' WHERE terminates='noo' and email='".$_SESSION['email']."' and id='".$ultimo_ids."'");
}
}
}
}
?>
podrias hacer que los videos se suban en una carpeta nueva que no exista y se suban todas las partes de resumable por favor