在PHP中移动上传的文件时出错

在PHP中移动上传的文件时出错,php,Php,我正在尝试为PDF文件制作一个上传程序,我不知道为什么当我在localhost中工作时一切都正常,但是当我使用付费托管时,move_uploaded_file的功能不起作用 这是我的密码: <?php $empresa = $_POST['name']; $direccion = $_POST['direccion']; $codigopostal = $_POST['codepostal']; $poblacion= $_POST['poblacion']; $email = $_POS

我正在尝试为PDF文件制作一个上传程序,我不知道为什么当我在localhost中工作时一切都正常,但是当我使用付费托管时,move_uploaded_file的功能不起作用

这是我的密码:

<?php
$empresa = $_POST['name'];
$direccion = $_POST['direccion'];
$codigopostal = $_POST['codepostal'];
$poblacion= $_POST['poblacion'];
$email = $_POST['email'];
$telefono = $_POST['telefonol'];
$trabaja = $_POST['jobornot'];
$horarios = $_POST['horarios'];
$enque = $_POST['seleccion'];
$permisoconducir = $_POST['conducir'];
$uploaddir = '../tmp_cv/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

$sujeto = "Curriculum Vitae Baby & Home";
$from = "recursoshumanos@babyandhome.es";
$headers = "From:" . $from;
$cuerpo = "Empresa: ".$empresa."\n\nDirección:".$direccion."\n\nPoblación:\n".$poblacion."\n\nCodigo Postal:\n".$codigopostal."\n\nemail:\n".$email."\n\nTeléfono:\n".$telefono."\n\nTrabaja?:\n".$trabaja."\n\nEn que?:\n".$enque."\n\nPermiso de conducir?:\n".$permisoconducir."\n\nHorarios disponibles:\n".$horarios."";
$to = 'recursoshumanos@babyandhome.es';

$cuerpo_automatico = "";


if($empresa==NULL or $direccion==NULL or $poblacion==NULL or $codigopostal==NULL or $email==NULL or $telefono==NULL) {
    echo 'Todos los campos con un (*) son obligatorios';
}
elseif($_FILES['userfile']['size'] > 5000000) {
        echo "El tamaño del pdf es demasiado grande y debe ser como máximo de 5Mb";
}
        elseif(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
        require 'PHPMailerAutoload.php';
        require_once('class.phpmailer.php');
        $mail = new PHPMailer;
        $mail->setFrom('recursoshumanos@babyandhome.es', 'Recursos Humanos Baby & Home');
        $mail->addAddress($email, '');
        $mail->Subject = 'Curriculum Vitae Baby & Home';
        $mail->msgHTML("Muchas gracias por hacernos llegar su CV a Baby & Home. Revisaremos su candidatura y en el momento que exista una oferta adecuada a su perfil nos pondremos en contacto con usted.");
        $mail->addAttachment($uploadfile, '');

        if (!$mail->send()) {
            $msg = "Error: " . $mail->ErrorInfo;
        } else {
            echo'Mensaje enviado correctamente';
        }
    }
    else {
    echo'Ha habido un error, porfavor vuelve a enviar tu mensaje';
}

?>

因为不要进入那里并显示echo。

我搜索过,我认为我的问题不在PHP中,而在Ajax/jQuery中

我使用以下代码:

函数enviarCV(){
$(“#send”).html(“Enviando…”);
$.ajax({
url:“enviracorreocv.php”,
键入:“POST”,
数据:$('#form2')。序列化(),
cache:false,
成功:函数(html){
$(“#send”).html(“Enviar”);
警报(html);
}
});	

}
主机上的权限是否与本地计算机上的权限相同?错误日志中应该有一些有用的信息。它是共享主机吗?可能缺少在目标目录创建文件的权限。我在哪里可以检查权限?php信息文件?我检查了一下,一切都一样。我也编辑了php.ini。我在哪里可以检查权限。。。导航到您指定的
tmp\u cv/
目录(可能通过FTP),查看*nix所有者/组权限的外观;您可能会看到类似于
www-data www-data-drwxr-x---
;第一部分是文件所有者,第二部分是组,最后一部分是该目录的实际权限。。。我猜你可能会想要
drwxrwx---
(770)-尽管Apache/PHP用户可以在文档根目录下写入一个文件(例如,它可以通过http读取)存在安全隐患。filezilla中的@CD001表示权限是flcdmpe(0755)。这样行吗?
elseif(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {