Skip to content

Commit 6c17a45

Browse files
committed
Accessing headers via $_SERVER instead of getallheaders().
The getallheaders() method is only available if PHP is installed as Apache module, not when PHP is run via CGI.
1 parent 4e605b7 commit 6c17a45

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

example/upload.php

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22
/*
3-
* jQuery File Upload Plugin PHP Example 4.1
3+
* jQuery File Upload Plugin PHP Example 4.1.1
44
* https://github.com/blueimp/jQuery-File-Upload
55
*
66
* Copyright 2010, Sebastian Tschan
@@ -108,12 +108,13 @@ public function get () {
108108
}
109109

110110
public function post () {
111-
$headers = getallheaders();
112111
$file_request = isset($_FILES['file']) ? $_FILES['file'] : null;
113112
$uploaded_file = $file_request ? $file_request['tmp_name'] : null;
114113
$file = new stdClass();
115-
$file->name = basename(isset($headers['X-File-Name']) ? $headers['X-File-Name'] : $file_request['name']);
116-
$file->size = intval(isset($headers['X-File-Size']) ? $headers['X-File-Size'] : $file_request['size']);
114+
$file->name = basename(isset($_SERVER['HTTP_X_FILE_NAME']) ?
115+
$_SERVER['HTTP_X_FILE_NAME'] : $file_request['name']);
116+
$file->size = intval(isset($_SERVER['HTTP_X_FILE_SIZE']) ?
117+
$_SERVER['HTTP_X_FILE_SIZE'] : $file_request['size']);
117118
if ($file->name[0] === '.') {
118119
$file->name = substr($file->name, 1);
119120
}
@@ -146,7 +147,8 @@ public function post () {
146147
}
147148
$file->size = $file_size;
148149
}
149-
if (isset($headers['X-Requested-With']) && $headers['X-Requested-With'] === 'XMLHttpRequest') {
150+
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) &&
151+
$_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest') {
150152
header('Content-type: application/json');
151153
}
152154
echo json_encode($file);

0 commit comments

Comments
 (0)