Php 将mp3文件上载到文件夹无效
我正在尝试使用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) {
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或服务器本身的一些设置。我相应地更新了答案。