Php 将mp3文件上载到文件夹无效

Php 将mp3文件上载到文件夹无效,php,file-upload,mp3,file-rename,Php,File Upload,Mp3,File Rename,我正在尝试使用PHP将mp3格式的文件上传到一个文件夹中。但是下面的代码不起作用。请有人帮我一下好吗 define("UPLOAD_DIR", "mp3_upload_folder/"); if (!empty($_FILES["myFile"])) { $myFile = $_FILES["myFile"]; if ($myFile["error"] !== UPLOAD_ERR_OK) {

我正在尝试使用PHP将mp3格式的文件上传到一个文件夹中。但是下面的代码不起作用。请有人帮我一下好吗

define("UPLOAD_DIR", "mp3_upload_folder/");
if (!empty($_FILES["myFile"])) 
        {
        $myFile = $_FILES["myFile"];

        if ($myFile["error"] !== UPLOAD_ERR_OK) 
            {
            echo "<p>An error occurred.</p>";
            exit;
            }
     // verify the file is a GIF, JPEG, or PNG
    $fileType = exif_imagetype($_FILES["myFile"]["tmp_name"]);

        // ensure a safe filename
        $name = preg_replace("/[^A-Z0-9._-]/i", "_", $myFile["name"]);

        // don't overwrite an existing file
        $parts = pathinfo($name);

        $sanjiv=$_POST['user_id'];
        $name= $sanjiv.".".$parts["extension"];
        // preserve file from temporary directory
        $success = move_uploaded_file($myFile["tmp_name"],
            UPLOAD_DIR . $name);
        if (!$success) { 
            echo "<p>Unable to save file.</p>";
            exit;
        }
定义(“上传目录”,“mp3上传文件夹/”;
如果(!空($\u文件[“myFile”]))
{
$myFile=$\u文件[“myFile”];
如果($myFile[“error”]!==上传错误确定)
{
echo“发生错误。

”; 出口 } //验证文件是否为GIF、JPEG或PNG格式 $fileType=exif_imagetype($_FILES[“myFile”][“tmp_name”]); //确保文件名安全 $name=preg_replace(“/[^A-Z0-9.\-]/i”、“\”、$myFile[“name”]); //不要覆盖现有文件 $parts=pathinfo($name); $sanjiv=$\u POST['user\u id']; $name=$sanjiv.“$parts[“extension”]; //从临时目录中保留文件 $success=移动上传的文件($myFile[“tmp\u name”], 上传_DIR.$name); 如果(!$success){ echo“无法保存文件。

”; 出口 }
这是可行的,并确保它拥有写入mp3\u upload\u文件夹的权限。我认为它仍然缺乏完整的解决方案,但我对这个问题缺乏全面的了解

<!DOCTYPE html>
<html>
<head>

</head>
<body>
<?php

define("UPLOAD_DIR", "./mp3_upload_folder/");
if (!empty($_FILES["myFile"])) {
    $myFile = $_FILES["myFile"];

    if ($myFile["error"] !== UPLOAD_ERR_OK) {
        echo "<p>An error occurred.</p>";
        exit;
    }

    // ensure a safe filename
    $name = $myFile["name"]; //preg_replace("/[^A-Z0-9\.\-]/i", "_", $myFile["name"]); //this is pointless if you're not using it

    // don't overwrite an existing file
    $parts = pathinfo($name);

    $name= $_POST['user_id'].".".$parts["extension"];
    // preserve file from temporary directory
    $success = move_uploaded_file($myFile["tmp_name"], UPLOAD_DIR .$name);
    if (!$success) { 
        echo "<p>Unable to save file.</p>";
        exit;
    }
}

?>
<form method="post" enctype="multipart/form-data">
    <input type="text" value="testUserId"  name ="user_id"/>
    <input type="file" name="myFile"/>
    <input type="submit"/>
</form>     

</body>
</html>

还要确保编辑服务器设置以及上载文件大小的php设置(在php.ini中):

贴纸最大尺寸

上传最大大小(可能默认为2M)


我不确定您使用的是哪台服务器,但通过谷歌搜索服务器类型和“最大上载大小”可以很容易地找到信息。这是可行的,并确保它具有写入mp3上传文件夹的权限。我认为这仍然缺乏一个完整的解决方案,但我缺乏对问题的全面了解

<!DOCTYPE html>
<html>
<head>

</head>
<body>
<?php

define("UPLOAD_DIR", "./mp3_upload_folder/");
if (!empty($_FILES["myFile"])) {
    $myFile = $_FILES["myFile"];

    if ($myFile["error"] !== UPLOAD_ERR_OK) {
        echo "<p>An error occurred.</p>";
        exit;
    }

    // ensure a safe filename
    $name = $myFile["name"]; //preg_replace("/[^A-Z0-9\.\-]/i", "_", $myFile["name"]); //this is pointless if you're not using it

    // don't overwrite an existing file
    $parts = pathinfo($name);

    $name= $_POST['user_id'].".".$parts["extension"];
    // preserve file from temporary directory
    $success = move_uploaded_file($myFile["tmp_name"], UPLOAD_DIR .$name);
    if (!$success) { 
        echo "<p>Unable to save file.</p>";
        exit;
    }
}

?>
<form method="post" enctype="multipart/form-data">
    <input type="text" value="testUserId"  name ="user_id"/>
    <input type="file" name="myFile"/>
    <input type="submit"/>
</form>     

</body>
</html>

还要确保编辑服务器设置以及上载文件大小的php设置(在php.ini中):

贴纸最大尺寸

上传最大大小(可能默认为2M)


我不确定您使用的是哪台服务器,但通过谷歌搜索服务器类型和“最大上载大小”可以很容易地找到信息

您可能可以删除检查以查看文件是否为图像。您可能可以删除检查以查看文件是否为图像。它允许使用图像文件。但当我尝试上载mp3文件时,它会打印以下消息“发生错误”。您可能需要更改php或服务器本身的一些设置。我相应地更新了答案。它允许使用图像文件。但当我尝试上载mp3文件时,它会打印以下消息“发生错误”。您可能需要更改php或服务器本身的一些设置。我相应地更新了答案。