Hola amigos:
Tengo un pequeño problema, estoy intentando subir un fichero de audio pequeño en MP3 (no mas de 200k) por medio de un form que pilla un foto y el sonido.
El codigo es el mismo pero la foto se sube bien y el fichero mp3 no, no se si es una cuestion del campo del form que lo busca (tipo file) o que no es capaz de subir.
Os muestro el codigo
Código PHP:
//miramos que exista fichero
if ($_FILES['foto']['name'] != "")
{
//miramos extension y guardamos en $ruta_fotos (conf.php)
$ext = substr ($_FILES['foto']['name'], -3);
if (is_uploaded_file($_FILES['foto']['tmp_name']))
{
for ($i=0;$i<3;$i++)
{
srand((double)microtime()*1000000);
$randval = rand(10000000,99999999);
$nombre.=$randval;
}
$filename = $nombre.".".$ext;
copy($_FILES['foto']['tmp_name'], $rutaadmin.$filename);
//permisos adecuados (rw-r--r--)
chmod( $rutaadmin.$filename, 0644 );
$imagen=$rutaadmin.$filename;
thumbjpeg($imagen, 125);
}
else
{
echo "Fallo al subir el fichero:".$_FILES['foto']['name'];
$filename = "0"; //fichero q no se pudo subir
}
}
else
{
$filename= "0"; //no hay fichero
}
//miramos que exista fichero de sonido
if ($_FILES['sonido']['name'] != "")
{
//miramos extension y guardamos en $ruta_fotos (conf.php)
$ext = substr ($_FILES['sonido']['name'], -3);
if (is_uploaded_file($_FILES['sonido']['tmp_name']))
{
for ($i=0;$i<3;$i++)
{
srand((double)microtime()*1000000);
$randval = rand(10000000,99999999);
$nombre.=$randval;
}
$soundname = $nombre.".".$ext;
copy($_FILES['sonido']['tmp_name'], $rutasound.$soundname);
//permisos adecuados (rw-r--r--)
chmod( $rutasound.$soundname, 0644 );
}
else
{
echo "Fallo al subir el fichero:".$_FILES['sonido']['name'];
$soundname = "0"; //fichero q no se pudo subir
}
}
else
{
$soundname= "0"; //no hay fichero
}
//guardamos todo en la base de datos
$cuerpo = nl2br($cuerpo);
if ($filename!= "0")
$cuerpo = "<img src=\"".$rutaindex.$filename."\" align=left>".$cuerpo;
$fecha = date("Y-m-d");
$args="'','$titulo','$cabecera','$cuerpo','$filename','$publicado','$soundname','$fecha'";
$error = $db -> db_Insert("noticia", $args);
y este es el codigo del formulario
Código PHP:
echo "<form enctype=\"multipart/form-data\" action=\"operacion.php?operacion=insertarnoticias\" method=\"post\">\n";
echo "<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"50000\">\n";
echo "<tr>\n";
echo "<td>Titulo:</td><td><input type=text name=titulo maxlength=255></td></tr>\n";
echo "<tr>\n";
echo "<td>Cabecera:</td><td><input type=text name=cabecera maxlength=255></td></tr>\n";
echo "<tr>\n";
echo "<td>Cuerpo:</td><td><textarea rows=\"10\" cols=\"40\" name=cuerpo></textarea></td></tr>\n";
echo "<td>Publicacion de la noticia:</td><td><select name=\"publicado\">\n";
echo "<option value=\"1\" selected>Si</option>\n";
echo "<option value=\"0\">No</option>\n";
echo "</select> </td></tr>\n";
echo "<tr>\n";
echo "<td>Foto:</td><td><input type=file name=foto maxlength=255></td></tr>\n";
echo "<tr><td></td><td><b>La imagen solo puede tener Formato JPG o JPEG y para su correcta visualizacion se recomienda un tamaño de 150x113</b></td></tr>\n";
echo "<tr>\n";
echo "<td>Sonido:</td><td><input type=file name=sonido maxlength=255></td></tr>\n";
echo "<tr>\n";
echo "<td><input TYPE=\"button\" VALUE=\"Enviar\" onClick=\"Validar(this.form)\"></td><td> <input type=reset value=Borrar></td></tr>\n";
echo "</form></table>\n";
Los permisos de las carpetas están bien, y no encuentro la solucion
Muchas gracias