Foros del Web » Programando para Internet » PHP »

Problemas al subir video

Estas en el tema de Problemas al subir video en el foro de PHP en Foros del Web. Hola que tal¿? La cuestión es que estoy intentando subir un video en localhost a la bd y no consigo que me funcione. He estado ...
  #1 (permalink)  
Antiguo 02/06/2008, 09:08
 
Fecha de Ingreso: mayo-2008
Mensajes: 36
Antigüedad: 16 años
Puntos: 0
Problemas al subir video

Hola que tal¿?

La cuestión es que estoy intentando subir un video en localhost a la bd y no consigo que me funcione. He estado mirando por google y no e encontrado solución. La cuestión es que he tocado el php.ini aumentado el tamaño para subir el archivo y no consigo que funcione.
Este es el codigo php que utilizo:
Código PHP:
function subirArchivo($db,$id,$dirArchivos,$nombre_archivo,$tipo_archivo,$tamano_archivo,$tmp_name)
{
    
$auxInfo=pathinfo($nombre_archivo);
    
$extension=$auxInfo["extension"];
    
$auxNombre=basename($nombre_archivo,".".$extension);
    
    if (
$tipo_archivo == "video/avi"){
        echo 
"video avi";
    }

    
//comprobamos que es un fichero de imagen/video
    
if (!(((strpos($tipo_archivo"jpeg")) || strpos($tipo_archivo"jpg") || strpos($tipo_archivo"bmp") || strpos($tipo_archivo"gif") || strpos($tipo_archivo"avi") || strpos($tipo_archivo"mpg") || strpos($tipo_archivo"mov")) && ($tamano_archivo 100000000)))
    {
        echo 
"La extensión o el tamaño de las fotos o video no es correcta. <br>
        <table><tr><td><li>Se permiten fotos jpeg, jpg, bmp, o gif<br>
                       <li>se permiten fotos de 1 MB máximo.</td></tr>
                       <li>Se permiten videos avi, mpg o mov<br>
                       <li>se permiten videos de 100 MB máximo.</td></tr>
        </table>"
;
        echo 
"Nombre Archivo: ".$nombre_archivo."    Tipo Archivo: ".$tipo_archivo."   Tamaño Archivo :".$tamano_archivo."<br>";

    } else {
    
        
$nombreFinal=$dirArchivos.$id."_".$auxNombre.".".$extension;
        
//calculamos el nombre final
        
$i=0;
        while (
file_exists($nombreFinal))
        {
            
$nombreFinal=$dirArchivos.$id."_".$auxNombre."_".$i.".".$extension;
            
$i++;
        }
//if
        
if (move_uploaded_file($tmp_name$nombreFinal)){
            
//echo $HTTP_POST_FILES['userfile']['tmp_name'];
        
}else{
           echo 
"Ocurrió algún error al subir el fichero. No pudo guardarse.";
           return 
null;
        }
//if
        //echo "Nombre Archivo: ".$nombre_archivo."    Tipo Archivo: ".$tipo_archivo."   Tamaño Archivo :".$tamano_archivo."   Nombre Final :".$nombreFinal."<br>";
        
        //Obtenemos el tamaño (ancho x alto) de la imagen
        
$size getimagesize($dirArchivos.$id."_".$nombre_archivo);
        
$tamaño_final=$size[0]." x ".$size[1];
        
        if (((
strpos($tipo_archivo"jpeg")) || strpos($tipo_archivo"jpg") || strpos($tipo_archivo"bmp") || strpos($tipo_archivo"gif")))
        {
            
//Creacion del thumbnails
            
$nombreThumb $id."_".$nombre_archivo;
            
$dirThumbs="./archivos/thumbs/"//directorio donde se almacenan los thumbs    
                
            
if(!thumbnail($nombreThumb,$dirThumbs,150,113,true))
            { 
                echo 
"Error en la creacion de thumbnail <br>";
            }else{ 
                echo 
"Creacion thumbnail exitosa <br>"
            }
//if
                
            
$urlThumb $dirThumbs.$nombreThumb;
            
$tamañoThumb="150 x 113";
        } else {
            
            
$urlThumb null;
            
$tamañoThumbnull;
        }
                
        
//Ahora insertamos la info del archivo
        
$strSQL="INSERT INTO archivos (id,url,mime,size,nombre,tamaño, urlThumb, tamañoThumb) VALUES (null, '".urlencode($nombreFinal)."', '"$tipo_archivo ."', " $tamano_archivo ",'" $nombre_archivo."','" .$tamaño_final"', '".urlencode($urlThumb). "', '" .$tamañoThumb."' );";
        echo 
"++++++++++++++++++".$strSQL."++++++++++++++";
        
        
$result=$db->query($strSQL);
        
$result=$db->insert_id();
        
        echo 
"<br><br>";
        if(
$db->affectedRows==0)
        {
            echo 
"Error insertando en la tabla de archivos: ".strSQL;
            return 
null;
        } else {
            
//si todo ha ido bien, devolvemos el id del archivo que se acaba de insertar
            
return $result;
        }
//if
        
    
}//if

        
return null;

La cuestion es que me sale el if de la comprobación del archivo y ya no se que hacer.
El codigo de html que utilizo es este:

Código HTML:
         //Aqui es donde subo el video
	<tr>
	<td>Video (max 100MB):</td>
    	<td>
		<input name="<? echo 'userfile6'; ?>" type="file" >
		<input type="hidden" name="MAX_FILE_SIZE" value="100000000" >
			
		<?
			if (isset($nombre_archivo6))
			{
				print_r("Video: ".$nombre_archivo6." ");
			}//if
		?>
			
	</td>
	</tr>

        //Aqui donde trato el archivo y llamo a la funcion subirarchivo
	//subimos el video
	if(isset($HTTP_POST_FILES['userfile6']) && $HTTP_POST_FILES['userfile6']['name']!="")
		{		
			$nombre_archivo6 = $HTTP_POST_FILES['userfile6']['name'];
			$tipo_archivo6 = $HTTP_POST_FILES['userfile6']['type'];
			$tamano_archivo6 = $HTTP_POST_FILES['userfile6']['size'];
			$tmp_name6=$HTTP_POST_FILES['userfile6']['tmp_name'];

			echo "VIDEO: ".$HTTP_POST_FILES['userfile6']['name']."\n";
			echo "<br>";		
				$idvideo=subirArchivo($db,$id,$dirArchivos,$nombre_archivo6,$tipo_archivo6,$tamano_archivo6,$tmp_name6);
			echo "----".$tipo_archivo6. "----";
			if($idvideo==null)
			{
				//No se ha insertado los contenido
				echo "ERROR Insertanto Info del Video del Ejemplar ";
				rollback();
			} else {
				echo "Video insertada correctamente";
				echo "<br>";
				commit();
				//$insertado=true;
			}//if
		}//if
Espero que me podais ayudar.
GRacias y un cordial saludo
  #2 (permalink)  
Antiguo 02/06/2008, 10:33
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: Problemas al subir video

Hola

No te aconsejo que guardes videos en la BD, sobrecarga la base
seria mejor guardar el archivo en una carpeta del servidor y solo su ruta en la BD
En APORTES Y SISTEMAS PHP, encontraras un ejemplo en CENTRO DE DESCARGAS

Un saludo
  #3 (permalink)  
Antiguo 02/06/2008, 16:18
 
Fecha de Ingreso: mayo-2008
Mensajes: 36
Antigüedad: 16 años
Puntos: 0
Respuesta: Problemas al subir video

Es que por temas de curro necesito k la base de datos guarde vídeos.
Observando un poco el código que puesto, me he dado cuenta que en el html al obtener los diversos datos del video, el nombre lo pilla bien, pero lo que hace referencia al tipo, tamaño y tmp_name los deja en blanco, como si no obtuviera la información.
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 12:56.