Foros del Web » Programando para Internet » PHP »

No puedo subir mp3 con php

Estas en el tema de No puedo subir mp3 con php en el foro de PHP en Foros del Web. Tengo un panel administrador donde organizo las imagenes de una seccion de la web y donde subo musica para el player. Las imagenes se suben ...
  #1 (permalink)  
Antiguo 29/02/2008, 05:27
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Pregunta No puedo subir mp3 con php

Tengo un panel administrador donde organizo las imagenes de una seccion de la web y donde subo musica para el player. Las imagenes se suben bien pero el mp3 no se sube.

Código PHP:
if (isset($_FILES['audio'])) {
    
    
$destino "player/";
    
$nombre_archivo $_FILES['audio']['name'];
    
$tipo_archivo $_FILES['audio']['type'];
    
$nombre_tmp $_FILES['audio']['tmp_name'];
    
    if (!(
strpos($nombre_archivo"mp3"))) {
        echo 
'<tr><td style="padding:20 0 20 0px"><div id="titulo">La extensi&oacute;n del archivo no es correcta.</div></td></tr>';
    } else {
        if (
copy($nombre_tmp$destino.$nombre_archivo)){
            echo 
'<tr><td style="padding:20 0 20 0px"><div id="titulo">El mp3 se ha subido correctamente.</div></td></tr>';
        } else {
            echo 
'<tr><td style="padding:20 0 20 0px"><div id="titulo">'.$nombre_archivo.' / '.$nombre_tmp.' - Error al subir el fichero.</div></td></tr>';
        }
    }

Código HTML:
<tr>
<form action="admin.php" method="post" name="audio" enctype="multipart/form-data">
<td><input type="file" name="audio" id="input2" /> 
<a href="javascript:document.audio.submit();" id="titulo">Subir canci&oacute;n... </a></td>
</form>
</tr> 
El $nombre_tmp no sale y el $tipo_archivo tampoco por eso tengo que mirar si es mp3 por el nombre. Es cosa del codigo o del servidor?
  #2 (permalink)  
Antiguo 29/02/2008, 05:32
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

no se, prueba con este if:



Código PHP:
if (isset($_POST['submit'])) {  
    if(
is_uploaded_file($_FILES['fichero']['tmp_name'])) {
    
    
     
// me verifica haya sido cargado el archivo 
        
$ruta_destino "../cevit/archivos/";
        if(
move_uploaded_file($_FILES['fichero']['tmp_name'], $ruta_destino $_FILES['fichero']['name'])) { // se coloca en su lugar final 
                    
echo "<b>Upload exitoso!. Datos:</b><br>"
            echo 
"Nombre: <i><a href=\"".$ruta_destino $_FILES['fichero']['name']."\">".$_FILES['fichero']['name']."</a></i><br>"
            echo 
"Tipo MIME: <i>".$_FILES['fichero']['type']."</i><br>"
                    echo 
"Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>"
                        echo 
"<br><hr><br>"

es que no veo tu funcion para subir el archivo.
  #3 (permalink)  
Antiguo 29/02/2008, 06:06
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: No puedo subir mp3 con php

gracias jaronu por tu ayuda pero no funciona.
Detecta el nombre de archivo pero no el tipo ni tampoco lo sube a la carpeta temporal.

para subir usaba copy(), he intentado con move_upload_file() pero tampoco funciona.
  #4 (permalink)  
Antiguo 29/02/2008, 06:11
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

que error te arroja

y si tienes configurado el archivo php.ini para hacer subidas de archivos grandes

si mno configuras unos parametros del php.ini tu o tu hosting puede que no tengas permiso para car4gar archivos grandes por que me imagino que son de varios megas los mp3
  #5 (permalink)  
Antiguo 29/02/2008, 06:58
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: No puedo subir mp3 con php

Ese es el problema que no lo se, el error que me da es el del else is_uploaded_file de tu codigo. No lo entiendo he puesto en el php.ini 80Mb de subida, lo estoy haciendo en local, sigo sin ver el error
  #6 (permalink)  
Antiguo 29/02/2008, 07:00
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

estos son los parametros a cambiar en php.ini

file_uploads = On // en On

max_execution_time = 500 // los segundos que consideren

max_input_time = 500// los segundos que consideren

memory_limit = 50M // por lo regular el mismo tamaño del archivo a subir o quizas mas

upload_tmp_dir = /xyz // su directorio temporal con permisos de R/W

post_max_size = 50M // el tamaño maximo de su archivo a subir

upload_max_filesize = 50M // el tamaño maximo de su archivo a subir
  #7 (permalink)  
Antiguo 29/02/2008, 07:25
 
Fecha de Ingreso: noviembre-2007
Mensajes: 15
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: No puedo subir mp3 con php

Hola yo hice un sitio donde subiamos mp3 y luego los reproduciamos, te dejo mi codigo, esto funciona asi que ojala sea lo que queres.

Primero el formulario donde le coloco un nombre al archivo y donde cargo el mp3
subir_audio.php:
Código PHP:
<form name="form1" method="post" enctype="multipart/form-data" action="cargarAudio.php" id="form1">
<
table width="100%" border="0" cellspacing="5" cellpadding="0">
                <
tr>
                  <
td width="31%" align="right" valign="top">Titulo Audio:</td>
                  <
td width="69%" align="left">
                    <
input name="titulo" type="text" id="titulo" />
                  </
td>
                </
tr>
                <
tr>
                  <
td width="31%" align="right">Audio:</td>
                  <
td width="69%" align="left">
                    <
input name="archivo" type="file" id="archivo" />
                </
td>
                </
tr>
        <
tr>
        <
td width="50%" align="center">
        <
input name="Submit" type="reset" value="Cancelar" />
        </
td>
        <
td width="50%" align="center"><input name="Submit2" type="submit" value="Guardar" /></td></tr>
              </
table>
 </
form
Ahora en este archivo hago la carga:

cargarAudio.php
Código PHP:
$titulo $_POST["titulo"];
$nvo_titulo=$titulo.".mp3";
$archivo_name $_FILES['archivo']['name'];
$archivo_t $_FILES['archivo']['tmp_name'];

$arch_size filesize($archivo);
if(
$archivo_name=="" ){//si no es vacio 
        //$insert = InsertarAudio($nvo_titulo,$arch_size);//aca lo inserto en la base esta comentada porque no te doy la funcion que lo hace
        
if(!copy($archivo,"$nvo_titulo"))//lo copio en el servidor, si no puede me da el error
            
echo "error al copiar el archivo".mysql_error();
        echo 
"se guardo con exito!";
}else{
    
header("Location: subir_audio.php");
    exit;

Espero que te sirva
  #8 (permalink)  
Antiguo 29/02/2008, 07:53
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

estas copiando solo $archivo y no el contenido del archivo.

Código PHP:
if(!copy($archivo,"$nvo_titulo"))//lo copio en el servidor, si no puede me da el error 

creo que deberia ser :$archivo_t

Código PHP:
if(!copy($archivo_t,"$nvo_titulo"))//lo copio en el servidor, si no puede me da el error 
prueba a ver
  #9 (permalink)  
Antiguo 29/02/2008, 07:54
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

pewro a demas donde quieres guardar los archivos, en la base de datos?
  #10 (permalink)  
Antiguo 29/02/2008, 08:22
 
Fecha de Ingreso: noviembre-2007
Mensajes: 15
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: No puedo subir mp3 con php

Cita:
Iniciado por jaronu Ver Mensaje
pewro a demas donde quieres guardar los archivos, en la base de datos?
Bueno quizas eso no te lo debi haber escrito a vos, pero es que yo guardo el nombre del mp3 y su peso en una base de datos... eso esta de mas...
mil disculpas
  #11 (permalink)  
Antiguo 29/02/2008, 08:29
 
Fecha de Ingreso: noviembre-2007
Mensajes: 15
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: No puedo subir mp3 con php

Cita:
Iniciado por jaronu Ver Mensaje
estas copiando solo $archivo y no el contenido del archivo.

Código PHP:
if(!copy($archivo,"$nvo_titulo"))//lo copio en el servidor, si no puede me da el error 

creo que deberia ser :$archivo_t

Código PHP:
if(!copy($archivo_t,"$nvo_titulo"))//lo copio en el servidor, si no puede me da el error 
prueba a ver
Mmmmm... lo que pasa es que $archivo contiene todos los datos, el nombre, el temp, el tamaño etc ya que mi servidor donde corre me toma a $archivo como

Código PHP:
$archivo$_FILES['archivo']; 
Sin necesidad de hacer esa asignacion... se que esta mal hacer eso. pero mi servidor esta liberado (quizas demasiado) para poder tomar las variables sin necesidad de $_FILES $_GET Y $_POST ... por eso uso $archivo, fijate que tambien le saque a $archivo el tamaño y no al $archivo_t...

Hacelo como quieras, tan solo queria ayudarte o mas que todo una referencia, el codigo funciona y actualmete esta en uso
  #12 (permalink)  
Antiguo 02/03/2008, 11:13
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: No puedo subir mp3 con php

El directorio temporal esta bien pues las imagenes me las sube bien, el problema es con los mp3 no me guarda el temporal por eso no lo copia luego al servidor, no creo que sea del tamaño pues el mp3 es de 3mb y ya he dicho que he puesto el limite a 80mb
  #13 (permalink)  
Antiguo 02/03/2008, 11:35
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

Bombillero, acabo, ahora mismo, de subir a una carpeta de mi web un archivo mp3 y lo ha hecho perfectamente, y despues lo abro o lo descargo, tambien lo ha introducido en la BD.

si no estas usando el codigo que te pase, algo haces mal, el que me ayudaro ha hacer en este foro funciona con cualquier archivo.

y esta prueva la hice hace 5 minutos antes de la hora que masrca el post.
  #14 (permalink)  
Antiguo 04/03/2008, 03:26
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: No puedo subir mp3 con php

Antes me salia pagina no encontrada o pagina en blanco y ahora me sale esto

Cita:
Se ha reiniciado la conexión

La conexión al servidor fue reiniciada mientras la página se cargaba.

* El sitio podría estar temporalmente no disponible o saturado. Vuelva a intentarlo en unos minutos.

* Si no puede cargar ninguna página, compruebe la conexión de red de su ordenador.

* Si su ordenador o su red están protegidos por un cortafuegos o un proxy, cerciórese de que se le permite acceder a la Web con Firefox.
  #15 (permalink)  
Antiguo 04/03/2008, 05:27
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Re: No puedo subir mp3 con php

No se Bombillero, debe ser cosa de tu hosting, ya te digo, el codigo que te pase lo tengo actualmente en funcionamiento y sube bien los archivos mp3, doc, rtf, pdr, flv, mpg, jpg, gif......
en mi hosting tengo el php 5, igual es problema de la version de php de tu hosting, y sobre todo de cuantos megas te dejan subier en el hosting, que lo raro es que te dejen cambiar a ti el php.ini, lo suelen cambiar ellos
  #16 (permalink)  
Antiguo 05/03/2008, 02:42
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mataró, Barcelona
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: No puedo subir mp3 con php

no lo se, la verdad en local tambien me dice lo mismo, podria ser por algun proxy... o algo del router?
  #17 (permalink)  
Antiguo 13/03/2008, 13:45
Avatar de faiverson  
Fecha de Ingreso: mayo-2005
Mensajes: 79
Antigüedad: 18 años, 11 meses
Puntos: 0
Busqueda Re: No puedo subir mp3 con php

Cambiando un poco, porque no tengo tiempo de pulirlo, te paso un codigo simple que anda a la perfeccion:

Código PHP:
$name_file $_FILES['userfile']['name']; //nombre del archivo
$type_file $_FILES['userfile']['type']; //tipo de archivo
$size_file $_FILES['userfile']['size']; //size in bytes
ini_set('upload_max_filesize','10M'); //seteo el tamaño maximo permitido por defecto en php.ini, solo para este PHP
ini_set('memory_limit','1500M');//cambio limite de memoria
ini_set('post_max_size','100M');cambio tamaño maximo
set_time_limit
(0);// pongo infinito en el tiempo que tarde en cargarse
if($size_file 6000000)  {
    
header("Location: error.php?err=This files is too heavy"); //aca lo mando si es muy grande...
}
$file "directorios/miarchivo.mp3"//mi archivo mp3
move_uploaded_file($_FILES['new_audio']['tmp_name'], $file); //subis el archivo
chmod($file0777); //habilitas todos los permisos del archivo 
Espero que lo entiendas y te sirva
__________________
Fabi... fighting versus the web
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 13:29.