Tengo una aplicación web hecha en php que me permitía subir documentos en el servidor y en local me funcionaba perfectamente con un SO windows.
Ahora me han dado un servidor en linux(no se cual, solo que es linux), y no me deja realizar el move_uploaded_file...
El error que me da es el siguiente:
Warning: move_uploaded_file(home/copa/public_html/Documentos/ManualPlacaBase.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/copa/public_html/NuevoDoc.php on line 28
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpRPvmaw' to 'home/copa/public_html/Documentos/ManualPlacaBase.pdf' in /home/copa/public_html/NuevoDoc.php on line 28
He estado mirando también en la página de php_net y dicen que podría ser por los permisos pero ya los tengo cambiados y tambien hago chmod del archivo temporal por si acaso... NO se que puede ser y ando un poco perdido, a ver si alguien podría echarme una mano por favor. Adjunto el código, por si acaso:
este es el archivo donde creo el formularoi que pide el documento
Código PHP:
<h3> Subir un nuevo documento: </h3>
<br>
<h4 align="middle"> INTRODUZCA LOS DATOS: </H4>
<form ENCTYPE="multipart/form-data" name='formulario' method=POST action='NuevoDoc.php'>
<table width='70%' border='0' align='center'>
<tr> <td valign='top'><strong>Tipo</strong></td>
<td valign='top'> <select name='Tipo'id='Tipo'> <option value="txt" selected="selected">documento de texto</option>
<option value="pdf" >documento pdf</option> <option value="word">documento word</option>
<option value="html" >documento html</option> <option value="odt">documento open office</option>
<option value="ppt" >Presentacion</option> <option value="pweb">Pagina web</option>
<option value="grafico">documento gráfico u imagen </option>
</td>
</tr>
<tr> <td valign='top'><strong>Nombre</strong></td>
<td valign='top'> <p align='left'>
<input name='nombre' type='file' size="50">
</td>
</tr>
</table>
<p align='center'> <input type='submit' name='Submit' value='Subir'> <input type='reset' name='Submit2' value='Limpiar'> </p>
</form>
Y este donde trato el arvchivo temporal creado
Código PHP:
$link = mysql_connect ("localhost", "proyecto", "barneto");
if (!$link)
echo("ERROR");
else{
if (!mysql_select_db("Documentos", $link))
echo("ERROR");
else{
$destino="home/copa/public_html/Documentos/";
chmod($_FILES["nombre"]["tmp_name"], 0777);
if (move_uploaded_file($_FILES["nombre"]["tmp_name"],$destino.$_FILES["nombre"]["name"])){
//
$nombre=$_FILES["nombre"]["name"];
echo $nombre;
$tipo=$_POST["Tipo"];
$Consulta ="insert into Docs values('".$nombre."','".$tipo."')";
$resultado = mysql_query($Consulta, $link);
echo ("<script>");
echo (" if (confirm('Subido con exito')) history.back();
else history.back(); ");
echo ("</script>");
}
else{
echo ("<script>");
echo (" alert('No se ha subido el documento') history.back(); ");
echo ("</script>");
}
}
}
Muchas gracias a todos!!!