Cita:
Iniciado por Nemutagk Sin saber mas ni ver mas código como es que guardas los archivos (DE NUEVO), solo queda pensar que el archivo sobrepasa el tiempo limite de ejecución o sobrepasa el peso limite para subir archivos, no sabemos que tipo de archivos subes (su peso) así que esto es estar adivinando con los pedazos de código que sueltas
Tienes razon, disculpa que no haya adjuntado todo el codigo, pero es que es un poco largo.
Aqui esta tal cual lo tengo:
Este es el Form:
Código HTML:
Ver original<form enctype="multipart/form-data" name="uploadform" id="uploadform" action="PageUpload.php?page=mp3&subir=si" method="post"> <input type="hidden" name="enviarya" id="enviarya" value="si"/> <div id="DescriptionUpload"> Solo se admiten archivos Mp3, y puedes subir hasta 5 pistas cada vez.
<div id="SubmitBoton" onclick="javascript: RevisarSubir('uploadform');"> ▲ Subir
<div id="ProcessLoad" style="float: left; width: 750px; display: none; text-align: center; color: white;"> Subiendo...(si estas subiendo varios archivos a la vez, ten paciencia, es normal que tarde un poco.)
<br/><img src="http://music-strike.net/images/subiendo.gif" style="width: 750px; height: 5px; margin-bottom: 5px;"/> <h2 style="float: left; padding: 5px; margin-bottom: 0px; background: #151515; width: 760px; border: black 1px solid; border-bottom: 0px; font-size: 1.2em;">Lista de archivos
</h2> <script type="text/javascript"> upload = new adekMultiUpload('uploadform',5,[".mp3"],'file');
upload.init();
Y este es el codigo javascript que hace el multiupload (adekMultiUpload()):
Código Javascript
:
Ver originalfunction adekMultiUpload(uploadform,max_rows,ext_array,input_prefix) {
this.max_rows = max_rows;
this.ext_array = ext_array;
this.count = 0;
this.j = 0;
this.CheckInputExt = function(id) {
allow = false;
var file = document.getElementById(input_prefix+'_'+id).value;
var dot = file.lastIndexOf('.');
if (dot != -1) {
var extension = file.substr(dot,file.length);
for (var i = 0; i < ext_array.length; i++) {
if (ext_array[i] == extension) { allow = true; break; }
}
}
if (allow) { return true; }
else {
this.remove_div(input_prefix+'_'+id);
this.add_new_row();
alert("Alert! Bad file format.\nAccepted extensions are: "
+ (ext_array.join(" ")) + "\n");
return false;
}
};
this.init = function() {
var div_inputs = document.createElement( 'div' );
div_inputs.id = input_prefix+'_inputs';
var div_uploadlist = document.createElement( 'div' );
div_uploadlist.id = input_prefix+'_uploadlist';
document.getElementById('uploadform').appendChild(div_inputs);
document.getElementById('uploadform').appendChild(div_uploadlist);
this.add_new_row();
}
this.remove_div = function(id) {
el = document.getElementById(id)
el.parentNode.removeChild(el);
};
this.add_new_row = function()
{
if(this.count >= this.max_rows)
return false;
var i = document.getElementById(input_prefix+'_inputs');
//Create new input button
var dividjs = 'file_' + (this.j+1);
var refjs = 'javascript: CargarExaminar("'+dividjs+'")';
var new_input = document.createElement( 'input' );
new_input.type = 'file';
new_input.name =input_prefix+'[]';
new_input.id = input_prefix+'_' + (this.j+1);
new_input.selector = this;
new_input.style.display= 'none';
new_input.onchange = function(){
this.selector.update_input(this.selector.j+1);
};
// Add new element
i.appendChild(new_input);
document.getElementById('BotonExa').innerHTML = "<div id='boton' onclick='"+refjs+"'>Examinar</div>";
};
this.delete_row = function(id)
{
if(this.count == 1){return false};
var upload_files = document.getElementById(input_prefix+'_uploadlist');
this.remove_div(input_prefix+'_'+id);
this.remove_div(input_prefix+'_del'+id);
this.count--;
if(this.count+1 == this.max_rows){this.add_new_row();};
};
this.update_input = function(id) {
if( (this.count >= this.max_rows) || (this.CheckInputExt(id)==false) )
return false;
var ObjectName = this;
var upload_files = document.getElementById(input_prefix+'_uploadlist');
//Files list: Filename
var new_delete = document.createElement( 'div' );
new_delete.id = input_prefix+'_del' + id;
new_delete.className = 'Subidos';
new_delete.innerHTML = "» "+document.getElementById(input_prefix+'_'+id).value;
//Files list: Delete button
var del_button = document.createElement( 'div' );
del_button.className = 'DeleteSubido';
del_button.selector = this;
del_button.onclick = function(){
this.selector.delete_row(id);
};
//Creamos form para datos
var DateMp3 = document.createElement('div');
DateMp3.className = "DatosMp3";
var Caja1 = document.createElement('div');
Caja1.className = "CajaDateMp3";
Caja1.innerHTML = " Artista/Grupo<br/><input type='text' name='artista[]' id='artista_"+id+"'/>";
var Caja2 = document.createElement('div');
Caja2.className = "CajaDateMp3";
Caja2.innerHTML = " Titulo<br/><input type='text' name='titulo[]' id='titulo_"+id+"'/>";
var Caja3 = document.createElement('div');
Caja3.className = "CajaDateMp3";
Caja3.innerHTML = " Genero musical<br/><input type='text' name='genero[]' id='genero_"+id+"'/>";
DateMp3.appendChild(Caja1);
DateMp3.appendChild(Caja2);
DateMp3.appendChild(Caja3);
//Create list row
upload_files.appendChild(new_delete);
new_delete.appendChild(del_button);
new_delete.appendChild(DateMp3);
//Counters ++
this.count++;
this.j++;
//Hide input and add another
var o = document.getElementById(input_prefix+'_'+id);
o.style.position = 'absolute';
o.style.left = '-1920px';
this.add_new_row();
};
};
Y este es el PHP que procesa lo enviado:
Código PHP:
Ver original $valido = 9;
$subidos = 0;
$ip = $_SERVER[REMOTE_ADDR];
$filepath = getcwd()."/tmp/mp3pending/"; $forpath = split("-",$fecha); $pathano = $filepath.$forpath[0]."/";
$pathmes = $pathano.$forpath[1]."/";
$pathdia = $pathmes.$forpath[2]."/";
$path = $pathdia;
for($i=0;$i<=count($_POST['artista'])-1;$i++){
$name_ori = $_FILES['file']['name'][$i];
$name_input = "C:\fakepath\".$name_ori;
$size = $_FILES['file']['size'][$i];
$url = "http://music-strike.net/".str_replace('/home/music/public_html/','',$path.$name);
$subidos++;
chmod($path.$name, 0777); $sql = "INSERT INTO music_pend (genero,artista,titulo,name_actu,name_ori,size,url,user_id,fecha,ip,valido) VALUES ('$genero','$artista','$titulo','$name','$name_ori','$size','$url','$user_id','$fecha','$ip','$valido')";
}
}
if($subidos==1){
echo "<center><img src='http://music-strike.net/images/icons/bien.png'/><br/> <span style='color: green; font-size: 1.3em;'>Archivo subido exitosamente!</span></center>";
}else{
echo "<center><img src='http://music-strike.net/images/icons/bien.png'/><br/> <span style='color: green; font-size: 1.3em;'>Archivos subidos exitosamente!</span></center>";
}
}else{
echo "vuelve a mostrar como que no se ha enviado";
}
Como veras, en ningún lado no defino ningún tipo de capacidad, por lo cual imagino que no deberia a haber problemas, pero...
Solo se admiten archivos MP3, temas que van entre 1 y 5 minutos o mas, lo que son estandar, una media de 6MB por archivo y hasta un maximo de 5 archivos. Pero ya te digo el codigo en principio parece que esta todo bien, por eso es que no veia la necesidad de publicarlo, lo mas probable segun parece es que el problema trate de eso que mencionas, tiempo de ejecucion o el limite de archivos a subir