3
if ((($_FILES["myfile"]["type"] == "audio/mp3") ||
     ($_FILES["myfile"]["type"] == "audio/wav")) &&
    ($_FILES["myfile"]["size"] < 20000000)) 
{
    if (move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path) )
    {
        $result1=1;
    }
}
4

3 に答える 3

2

実際の mp3 ファイルの場合は、値をコピーして audio/mp3 の代わりに使用しますprint $_FILES["myfile"]["type"]; 。これは、mp3 の MIME タイプが「audio/mp3」にならないためです。audio/mpeg

ブラウザからの送信に依存することは推奨されていないため、このリンクも確認してください。$_FILES["myfile"]["type"]

于 2013-02-07T06:24:16.643 に答える
0

アップロードされたファイルの拡張子を評価することで確認できます。ファイル レベルを確認する場合は、pear パッケージのいずれかを使用できますhttps://pear.php.net/package/MP3_ID

于 2013-02-07T06:33:11.960 に答える
0

2つのこと。

ファイルのサイズを確認し.mp3ます。ファイルの種類を確認して、.mp3実際にaudio/mp3. 試してみてくださいprint_r($_FILES);

$type = $_FILES["myfile"]["type"];
$size = $_FILES["myfile"]["size"];

if( ( ($type == "audio/mp3") || ($type == "audio/wav") ) && ($size < 20000000)) {
    if(move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path) ) {
        $result1=1;
    }
}

それが役に立てば幸い。

于 2013-02-07T06:15:26.227 に答える