Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/02/2013, 23:06
NedFock
 
Fecha de Ingreso: febrero-2010
Mensajes: 107
Antigüedad: 16 años, 7 meses
Puntos: 0
Problema al ingresar datos en base de datos

Hola amigos de FDW!! estoy modificando un código para subir archivos, que lo saqué de este foro hace tiempo y actualmente lo uso para subir imágenes, pero ahora que lo quiero para subir mp3 me está dando problemas

El código en cuestión es este:
Código PHP:
include ('../acceso_db.php');
session_start();

$nombre = $_POST['nombre'];
if(isset(
$_POST['nombrealbum'])){
    
$album = $_POST['nombrealbum'];
}else{
    if(isset(
$_POST['album'])){
    
$album = $_POST['album'];
    }else{
    
$album = "general";
     }
    
if(
is_uploaded_file ($_FILES [ 'file' ][ 'tmp_name' ])){
 if(
$_POST){ 
// Creamos la cadena aletoria 
$str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 
$cad = ""; 
for(
$i=0;$i<12;$i++) { 
$cad .= substr($str,rand(0,62),1); 
} 
// Fin de la creacion de la cadena aletoria 
$tamano = $_FILES [ 'file' ][ 'size' ]; // Leemos el tamaño del fichero 
$tamaño_max="100000000000"; // Tamaño maximo permitido 
if( $tamano < $tamaño_max){ // Comprobamos el tamaño  
$ruta = "{$_SERVER['DOCUMENT_ROOT']}/canciones/{$_SESSION['usuario_id']}/{$album}/";

$ruta = "{$_SERVER['DOCUMENT_ROOT']}/canciones/{$_SESSION['usuario_id']}";
$perfil = '/{$album}';
if(!
file_exists($ruta))
{
$oldumask = umask(0); 
mkdir ($ruta);
mkdir ($ruta . $perfil);
umask($oldumask); 
}
$destino = $ruta . $perfil; // Carpeta donde se guardara 
$sep=explode('image/',$_FILES["file"]["type"]); // Separamos image/ 
$tipo=$sep[1]; // Optenemos el tipo de imagen que es 
if($tipo == "mp3" || $tipo == "wav" || $tipo == "wma"){ // Si el tipo de archivo a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de formatos
move_uploaded_file ( $_FILES [ 'file' ][ 'tmp_name' ], $destino . '/' .$cad.'.'.$tipo);  // Subimos el archivo 
$link = "{$_SERVER['DOCUMENT_ROOT']}/canciones/{$_SESSION['usuario_id']}/{$album}/".$cad.'.'.$tipo;
} 
else echo 
"el tipo de archivo no es de los permitidos";// Si no es el tipo permitido lo desimos 
} 
else echo 
"El archivo supera el peso permitido.";// Si supera el tamaño de permitido lo desimos 
} 



mysql_select_db("crunch");
//Creamos la sentencia SQL y la ejecutamos
$sql = mysql_query ("INSERT INTO canciones (nombre, album, link, usuario_id) VALUES ('$nombre', '$album', '$link', {$_SESSION['usuario_id']}") or die(mysql_error());
mysql_query($sql);
header("Location: /perfil.php?id=" . $_SESSION['usuario_id'] . "&modificado=ok");
}
} 

Perdón las faltas de ortografía en los comentarios, no fui yo quién lo escribio :D

La cuestión es que no me crea el registro en la base de datos, ni me redirige a perfil.php ... supongo tendría qe ser por estar mal armado los bloques, que el registro esté fuera de la condición, pero no, no encontré el problema! :S espero me puedan ayudar, y desde ya, muchas gracias por haber leído :D