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