El código que nos muestran es sencillo, se trata de subir un fichero mediante un formulario a un servidor FTP, para lo cual será necesario CURL.
Inicialmente necesitaremos el formulario html:
<form action="ftpupload.php" method="post" enctype="multipart/form-data">
<div>
<label for="upload">Selecciona un fichero</label>
<input name="upload" type="file" />
<input type="submit" name="submit" value="Enviar" />
</div>
</form>
Recordad que es importante que el enctype sea multipart/form-data para que se pueda enviar el fichero al servidor.
Una vez tenemos este formulario, deberemos tener el fichero ftpupload.php el cual deberá ejecutar lo siguiente:
if (isset($_POST['submit'])) {
if (!empty($_FILES['upload']['name'])) {
$ch = curl_init();
$localfile = $_FILES['upload']['tmp_name'];
$fp = fopen($localfile, 'r');
curl_setopt($ch, CURLOPT_URL, 'ftp://usuario:password@ftp.servidor.com/'.$_FILES['upload']['name']);
curl_setopt($ch, CURLOPT_UPLOAD, 1);
curl_setopt($ch, CURLOPT_INFILE, $fp);
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile));
curl_exec ($ch);
$error_no = curl_errno($ch);
curl_close ($ch);
if ($error_no == 0) {
$error = 'Fichero subido correctamente.';
} else {
$error = 'Error al subir el fichero.';
}
} else {
$error = 'Seleccione un fichero.';
}
}
Tutorial: FTP Upload via cURL
Yo he usado Wildfire (la versión previa de Openfire) para dar soporte a mensajerÃa interna de una empresa con 200/300 usuarios. Además se que la última versión de Openfire está por implementarse en otra empresa para mensajerÃa interna con casi 1000 usuarios y, usando un plugin, también dar soporte a un webchat en el callcenter de dicha empresa.
Gracias, Martin, por lo que dices parece que el rendimiento de Openfire va bien, a mi me han hablado un poco mal de él, por ser Java, aunque yo he trabajado mucho en Java y no he tenido problemas
Saludos
Openfire no está mal. Muy sencillo de instalar y configurar. Una interfaz web bastante completa y muchos plugins, para las pasarelas, webchat, bla bla… Lo malo es que es puro Java y consume demasiados recursos!