小编Cha*_*ark的帖子

使用REST在php中上传文件

有没有办法使用PHP使用REST将文件从客户端上传到服务器,

我正在尝试使用下面的代码,它不适用于我.

<?php

$file_to_upload = array('file_contents'=>'@c:\\test.txt');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://localhost/api/upload.php');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSER, TRUE);
curl_setopt($ch, CURLOPT_UPLOAD, TRUE);
curl_setopt($ch, CURLOPT_POST,TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $file_to_upload);
 curl_exec($ch) or die( curl_error($ch) );
$error = curl_error($ch);
curl_close ($ch);
echo " Server response: ".$result;
echo " Curl Error: ".$error;

?>
Run Code Online (Sandbox Code Playgroud)

和我的upload.php

$uploaddir = realpath('./') . '/';
$uploadfile = $uploaddir . basename($_POST['file']['name']);

echo $uploadfile;
echo "\n";
echo '<pre>';
echo $_POST['file']['tmp_name'];
       if (move_uploaded_file($_POST['file']['tmp_name'], $uploadfile)) {
           echo "File is valid, and was successfully uploaded.\n";
       } else …
Run Code Online (Sandbox Code Playgroud)

php rest curl file-upload

11
推荐指数
2
解决办法
3万
查看次数

从标题下载时缺少文件扩展名

我正在使用下面的代码下载一个文件,该工作很好,但问题是文件扩展名丢失,即使在压力下载后也是如此.我尝试将其更改为其他MIME类型,可能是什么问题,我该如何解决?

header('Content-Type: audio/mp3');
header("Content-Disposition: attachment; filename=$row[3]");
header("Content-Length: ".filesize("$row[1]$row[2]"));
$fp = fopen("$row[1]$row[2]", "r");
fpassthru($fp);
fclose($fp);
Run Code Online (Sandbox Code Playgroud)

注意:$ row数组中的值很好.

php apache .htaccess http-headers

2
推荐指数
1
解决办法
1766
查看次数

标签 统计

php ×2

.htaccess ×1

apache ×1

curl ×1

file-upload ×1

http-headers ×1

rest ×1