Загруженные песни через PHP - PullRequest
0 голосов
/ 13 марта 2012

Я создал API для загрузки песен, но это создает проблему. Когда я загружаю песню через устройство Android, она загружается в папку «Мои песни» в Ubuntu, но эта песня не воспроизводится. Пожалуйста, дайте мне решение?

Мой код такой:

<?php

include('connect.php');
header("Content-type: text/xml");

$target_path = "./Songs/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path))
{

    echo "The file ".'"'.  basename( $_FILES['uploadedfile']['name']) .'"'." has been uploaded";

    chmod ("Songs/".basename( $_FILES['uploadedfile']['name']), 0644);
} 
else
{
    echo "There was an error uploading the file, please try again!";

    echo "filename: " .  basename( $_FILES['uploadedfile']['name']);

    echo "target_path: " .$target_path;
}

?>

1 Ответ

3 голосов
/ 08 октября 2012

Я сделал это, и он работает нормально.

<?php

$target_path = "./Songs/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);

//Get the uploaded file information

$name_of_uploaded_file =basename($_FILES['uploadedfile']['name']);

//get the size of the file

$size_of_uploaded_file = $_FILES["uploadedfile"]["size"]/1024;//size in KBs

//get the file extension of the file

$type_of_uploaded_file = substr($name_of_uploaded_file, strrpos($name_of_uploaded_file, '.') + 1);

//echo $size_of_uploaded_file;

$max_allowed_file_size = 10000; // size in KB

//Validations

if($size_of_uploaded_file>$max_allowed_file_size )
{

  $errors .= "\n Size of file should be less than $max_allowed_file_size";

  echo $errors;

  exit();

}

$allowed_extensions = array("mp3");

//------ Validate the file extension -----

$allowed_ext = false;

for($i=0; $i < sizeof($allowed_extensions); $i++)
{

  if(strcasecmp($allowed_extensions[$i],$type_of_uploaded_file) == 0)
  {

    $allowed_ext = true;

  }

}

if(!$allowed_ext)
{

  $errors ="The uploaded file is not supported file type");

  echo 'not a song. Error = '.$errors;

  exit();

}
   $t_remaining = $time_remaining-$duration_of_song ;

  if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) 
  {

        // perform any operation 

    echo "successfully uploaded";

        chmod ("Songs/". basename( $_FILES['uploadedfile']['name']), 0777);

} 
else
{

    echo "error in uploading";

}
...