PHP文件上传并以JSON格式传输
时间: 2023-09-15 18:17:25 浏览: 151
PHP文件上传
下面是一个简单的PHP文件上传并将上传成功后的信息以JSON格式传输给前端页面的示例代码:
```php
<?php
// 检查是否有文件上传
if(isset($_FILES['file'])) {
$file = $_FILES['file'];
// 检查上传文件是否有错误
if($file['error'] === 0) {
// 上传成功,将文件信息转换成JSON格式并传输给前端页面
$result = array(
'success' => true,
'filename' => $file['name'],
'filesize' => $file['size'],
'filetype' => $file['type']
);
header('Content-Type: application/json');
echo json_encode($result);
} else {
// 上传失败,返回错误信息
$result = array(
'success' => false,
'message' => '上传失败'
);
header('Content-Type: application/json');
echo json_encode($result);
}
}
?>
```
前端页面可以使用类似以下的JavaScript代码来发送文件上传请求并处理响应:
```javascript
var input = document.querySelector('input[type="file"]');
var formdata = new FormData();
formdata.append('file', input.files[0]);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'upload.php');
xhr.onload = function() {
if(xhr.status === 200) {
var result = JSON.parse(xhr.responseText);
if(result.success) {
// 处理上传成功后的逻辑
console.log('上传成功:' + result.filename);
} else {
// 处理上传失败后的逻辑
console.error('上传失败:' + result.message);
}
}
};
xhr.send(formdata);
```
阅读全文