Hola,
estoy intentando hacer un componente para subir un archivo a un directorio, por ejemplo: /htdocs/directorioLocal. He estado siguiendo las instrucciones de esta url:
http://www.nosolocodigo.com/subir-ficheros-al-servidor-con-el-api-de-joomla. Tengo el siguiente código en la vista: default.php
Código HTML:
Ver original<html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <h1>Subir listado de alumnos
</h1>
<form name="registro" id="registro" action="index.php" method="POST" enctype="multipart/form-data" >
Introduce el fichero :
<input type="file" name="fichero" /> <input type="submit" value="Subir Fichero" /> <input type="hidden" name="option" value="com_ejemplo" /> <input type="hidden" name="task" value="subirFichero" />
y el siguiente en el controlador: mensaje.php
Código PHP:
Ver original<?php
jimport('joomla.application.component.controller');
class EjemploControllerMensaje extends JController {
function display() {
JRequest::setVar('view', 'mensaje');
parent::display();
}
function subirFichero(){
$file = JRequest::getVar( 'fichero', null, 'files', 'array' );
jimport('joomla.filesystem.file');
$mensaje .= "NoSeHaSubido";
}
if($file['error'] || $file['size'] < 1 ){
$mensaje .= " NoExisteFichero";
}
if( $file['size'] > 100 ){
$mensaje .=" FicheroDemasiadoGrande";
}
if(!JFile::upload($file['tmp_name'],"/directorioLocal".DS. $file['name'])){
$mensaje .= " ErrorAlSubirElFichero";
}
}
}
?>
se instala el componente correctamente. Cuando en la página inicial introduzco el fichero a subir y pulso el botón "Subir Fichero", me devuelve el siguiente error:
JFolder::create: Infinite loop detected
Warning! - Failed to move file.
He buscado en foros a que se podia deber el problema, he comprobado en configuration.php que las variables contubieran los valores que deben: $log_path
$tmp_path también he dado todos los permisos a directorioLocal que he creado en htdocs/directorioLocal.
A ver si me pueden echar una mano con esto. Gracias.