Foros del Web » Programando para Internet » PHP »

Ayuda, con archivos!!

Estas en el tema de Ayuda, con archivos!! en el foro de PHP en Foros del Web. Hola, quiero hacer que a travez de un form se suba un x archivo (mp3) al x carpeta (pj: /subidos/) y que de ahi de ...
  #1 (permalink)  
Antiguo 28/07/2008, 21:27
Avatar de Breaklo  
Fecha de Ingreso: junio-2008
Ubicación: Buenos Aires
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 1
Ayuda, con archivos!!

Hola, quiero hacer que a travez de un form se suba un x archivo (mp3) al x carpeta (pj: /subidos/) y que de ahi de cierta forma se suba a otra pagina.
  #2 (permalink)  
Antiguo 28/07/2008, 22:06
Avatar de richard187  
Fecha de Ingreso: julio-2008
Mensajes: 14
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Ayuda, con archivos!!

Cita:
Hola, quiero hacer que a travez de un form se suba un x archivo (mp3) al x carpeta (pj: /subidos/)
bueno lo que entendi es que quieres subir musica a una carpeta en tu host.
para ello, yo lo hago de la siguiente forma, solo utilizo un archivo subemusica.php (es para mi uso personal, no tiene las restricciones necesarias, simplemente es lo mas basico)

subemusica.php
Código PHP:
<html>
<title>subir musica by: Richard187</title>
<body>
<form name="form" action="subemusica.php" method="post" enctype="multipart/form-data">
  <div align="center">
    <input type="hidden" name="accion" value="subir">
    <br>
    <br>
    <span class="normal">Seleccionar Musica:  </span>
    <input name="im" type="file" size="40" />
    <br>
    <input name="enviar" type="submit" value="Subir Musica"/>
  </div>
</form>

    <?  
    
// subir musica xD!
    
$tamano $_FILES 'im' ][ 'size' ];
    if (
$_FILES 'im' ][ 'size' ]!=""){
    
//marco el tamaño que maximo de los archivos a subir en este caso.. unos 5MB
        
if (( $tamano <= 5000000 ) && ( $tamano )){
            
//recojo el archivo
            
$archivo $_FILES["im"]["name"];
            
//Obtengo el nombre y la extencion del archivo
            
$extension explode(".",$archivo);
            
//verifico si la extencion es mp3
            
if($extension[1]=="mp3"){
                
//subismos el archivo en la carpeta correspondiente
                
move_uploaded_file($_FILES["im"]["tmp_name"], "subidos/".$archivo);
                }
            else     echo 
"Solo archivos mp3";
            }    
        else{
            echo 
"El tamaño Maximo permitido por archivo es de 5MB.";
            }
        
//notificamos que ocurrio un error al subir o no se selecciono ningun archivo
        
echo "Error, selecciona un archivo";
        }
    
?>
</BODY>
</html>
no creo que sea necesario la explicacion.

Cita:
y que de ahi de cierta forma se suba a otra pagina.
esta es la parte que no entiendo
para quieres llevar el archivo que acabas de subira tu servidor a otro sitio?
simplemente usa el mismo codigo anterior y subelo al otro sitio.

pero si lo que quieres es a partir de una url (osea la de tu archivo) pasarla a otro servidor entonces usa lo siguiente:

Código PHP:
<?
    
//indicamos la ruta original del archivo
    
$url "http://www.tusitio.com/subidos/nombre_del_archivo.mp3";
    
//sacamos el nombre del archivo
    
$nombre basename($url);
    
//en url2 indicamos donde queremos que se guarde el nuevo archivo
    
$url2 "subidos2/".$nombre;
    
// Comprobamos si existe el archivo
    
$sitio fopen($url,"rb");
    if (
$sitio){
        
//prodecemos a copiarlo y guardarlo en la nueva direccion
        
$contenido stream_get_contents($sitio);
        
$sitio2 fopen($url2,"w+");
        
fwrite($sitio2,$contenido);
        
fclose($sitio2);
        }    
    
//informamos si ocurrio algun error
    
else{
        echo 
"Error. no existe el archivo";
        }
?>
este codigo me sirvio muchisimo para recuperar algunos archivos mp3 de un servidor gratuito que utilizaba hace tiempo. sin tener que descargarlos.
(no me hago responsable de los malos usos a este ultimo.)

ambos codigos puedes modificarlos a tu gusto, ponerle una form al segundo, etc.

espero te sirva xD

es mi primer dia en el foro jeje

despues me cuentas como te fue =)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:38.