mira este es el codigo que yo uso pero es para subir al server,
a lo mejor te fallan las rutas, prueba rutas absolutas y relativas.   
 Código PHP:
     
if (isset($_POST['submit'])) {  
    if(is_uploaded_file($_FILES['fichero']['tmp_name'])) {
    
    
     // me verifica haya sido cargado el archivo 
        $ruta_destino = "../cevit/archivos/";
        if(move_uploaded_file($_FILES['fichero']['tmp_name'], $ruta_destino . $_FILES['fichero']['name'])) { // se coloca en su lugar final 
                    echo "<b>Upload exitoso!. Datos:</b><br>"; 
            echo "Nombre: <i><a href=\"".$ruta_destino . $_FILES['fichero']['name']."\">".$_FILES['fichero']['name']."</a></i><br>"; 
            echo "Tipo MIME: <i>".$_FILES['fichero']['type']."</i><br>"; 
                    echo "Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>"; 
                        echo "<br><hr><br>"; 
    
  mi server esta basado en windows,
tambien usa este tipo de rutas 
c:/wamp/tmp" 
pero para localizar despues las carpetas uso las rutas asi: 
$ruta_destino = "../descarga/archivos/";  o asi 
$ruta_destino = "/descarga/archivos/";