<?php
switch( $task ) {
case 'add':
doAdd();
break;
default:
doForm();
}
function doHead()
{
print "<h2>File Upload</h2>\n";
}
function doForm()
{
doHead();
?>
<table class="contentpaneopen">
<tr>
<td>
Therdoggsv.net | Upload de archivos.
<ul>
<li>Se permiten archivos .gif o .jpg o .png o .zip o .rar o tar o tar.gz</li>
<li>Los archivos que no sean de imagenes (osea los zip y los rar !!) <br />deberan de ser reportados por email de su contenido, o deberan de ser de uso exclusivo de svcommunity.org de lo contrario seran borrados.</li>
<li>Se permiten archivos de 5Mb máximo.</li>
<li>No fotos xxx ni cracks ni warez. Eso es todo !</li>
<li>Los archivos pueden ser borrados en cualquier momento no doy garantia que estaran para toda la vida !</li>
</ul>
</td>
</tr>
<tr>
<td>
<form action="index.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="option" value="upload">
<input type="hidden" name="task" value="add">
<input type="hidden" name="MAX_FILE_SIZE" value="6246976" />
<br />
<b>Enviar un nuevo archivo: </b>
<br /><br />
<input name="user_file" type="file" class="inputbox" size="50" />
<br /><br />
<input type="submit" value="Enviar" class="button" />
</form>
</td>
</tr>
</table>
<?php
}
function doAdd()
{
doHead();
//datos del arhivo
$nombre_unico = time().$_FILES['user_file']['name'];
$nombre_archivo = "/home/therdogg/public_html/code/upload/files/".$nombre_unico;
$tipo_archivo = $_FILES['user_file']['type'];
$tamano_archivo = $_FILES['user_file']['size'];
//compruebo si las caracteristicas del archivo son las que deseo
if (!(((substr($nombre_archivo,-6) == "tar.gz") || (substr($nombre_archivo,-3)== "tar") || (substr($nombre_archivo,-3)== "rar") || strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpg") || strpos($tipo_archivo, "jpeg") || strpos($tipo_archivo, "png") || (substr($nombre_archivo,-3)== "zip")) && ($tamano_archivo < 6246976))){
echo "La extension o el tamaño de los archivos no es correcta. <br /><br /><table><tr><td><ul><li>Se permiten archivos .gif o .jpg o .png o .zip o .rar o .tar o .tar.gz</li><li>Se permiten archivos de 5Mb minimo.</li></ul></td></tr></table> ".$tipo_archivo;
}else{
if (move_uploaded_file($_FILES['user_file']['tmp_name'],$nombre_archivo)){
echo " <br />El archivo ha sido cargado correctamente. <br /> El nombre de archivo es: <br /> http://www.therdoggsv.net/code/upload/files/" .$nombre_unico;
if (strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpg") || strpos($tipo_archivo, "jpeg") || strpos($tipo_archivo, "png")){
echo " <br /><br />Puedes generar una imagen previa por medio del siguiente link: http://www.therdoggsv.net/code/upload/phpthumb/phpThumb.php?src=../files/".$nombre_unico."&w=300&h=300";}
}else{
echo "<br /> Ocurrio algun error al subir el fichero. No pudo guardarse.";
}
}
}
?>
<br /><br />
<a href="javascript:history.go(-1)">Regresar</a>
Aca les dejo el codigo que uso para el sistema de file upload que he puesto en mi sitio, espero que les sirva solo que habria que modificar algunas cosas para usarlo en un sitio normal como por ejemplo en el formulario poner el php al que se va a enviar el form , porque en mi caso el script es diferente ya que lo cree como un componente de joomla. Pero con saber un poquito de php se logra cambiar a un script normal