PHP/MySQL PDF上传

PHP/MySQL PDF上传,php,Php,我正在使用下面的代码添加/编辑pdf,但它似乎根本不起作用。非常感谢您的任何想法/帮助。 if (is_uploaded_file($_FILES['pdfFile']['tmp_name'])) { $format = strtolower(substr(strrchr($_FILES['pdfFile']['name'],"."),1)); $str = strtolower(trim($_FILES['pdfFile']['name'

我正在使用下面的代码添加/编辑pdf,但它似乎根本不起作用。非常感谢您的任何想法/帮助。

if (is_uploaded_file($_FILES['pdfFile']['tmp_name'])) {
        $format = strtolower(substr(strrchr($_FILES['pdfFile']['name'],"."),1));            
        $str = strtolower(trim($_FILES['pdfFile']['name']));
        $str = preg_replace('/[^a-z0-9-]/', '-', $str);
        $str = preg_replace('/-+/', "-", $str);
        $pdfFileName=$str.'.'.$format;
        $pdfUploadFile=$pdfFileDir.$pdfFileName;
        $format!='pdf' ? $error='Invalid format uploaded for PDF File!<br />Please only upload files with the ".pdf" extension.' : NULL;
        if (!$error && move_uploaded_file($_FILES['pdfFile']['tmp_name'], $pdfUploadFile)){ 
            if($_POST['docFilename'] && file_exists($pdfFileDir.'/'.$_POST['docFilename'])) {unlink($pdfFileDir.'/'.$_POST['docFilename']);}
            $_POST['docFilename']=$pdfFileName;                
            mysql_query("INSERT INTO table(docFilename, assoc_cat, assoc_object) VALUES('".$_POST['docFilename']."', '".$_POST['categoryID']."', '".$_POST['id']."')"); 
        } else {
            file_exists($pdfUploadFile) ? unlink($pdfUploadFile) : NULL;
            !$error ? $error='The chosen PDF file failed to upload correctly.<br />Please try again, or attempt to upload an alternative PDF.' : NULL;
        }
    }
if(是否上载了文件($\u文件['pdfFile']['tmp\u名称]])){
$format=strtolower(substr(strrchr($_FILES['pdfFile']['name'],“”),1));
$str=strtolower(修剪($_文件['pdfFile']['name']);
$str=preg_replace('/[^a-z0-9-]/','-',$str);
$str=preg_replace('/-+/',“-”,$str);
$pdfFileName=$str....$format;
$pdfUploadFile=$pdfFileDir.$pdfFileName;
$format!=“pdf”?$error='pdf文件上传的格式无效!
请仅上传扩展名为“.pdf”的文件。':NULL; 如果(!$error&&move_上传的文件($_文件['pdfFile']['tmp_name'],$pdfUploadFile)){ 如果($_POST['docFilename']&&file_存在($pdfFileDir./'.$_POST['docFilename']){取消链接($pdfFileDir./'.$_POST['docFilename']);} $\u POST['docFilename']=$pdfFileName; mysql_查询(“插入到表中(docFilename,assoc_cat,assoc_object)值(‘“$_POST['docFilename']”,‘“,‘“$_POST['categoryID']”,‘“,‘“$_POST['id']””); }否则{ 文件存在($pdfUploadFile)?取消链接($pdfUploadFile):空; !$error?$error='所选PDF文件未能正确上载。
请重试,或尝试上载其他PDF。':NULL; } }
确保为以下各项指定正确的设置:

  • 文件上传
  • 上载\u最大\u文件大小
  • 内存限制
  • 最大执行时间
  • 贴纸最大尺寸
见:

还要确保:

  • 您已经在
    表单中指定了
    enctype=“multipart”
  • 使用
    print\r($\u files)检查文件数组

另一个“为我调试代码”问题如果它不起作用,它以什么方式“不起作用”?比“似乎不起作用”多一点信息会有所帮助。它以什么方式不起作用?它能跑吗?它会抛出错误吗?etc?不是问题的解决方案,但给定代码的第8行和第15行是对三元运算符的可怕滥用,如果使用简单的if()语句会更好。很抱歉,我好像错过了表单帖子上的enctype=“multipart/form data”:(