У меня есть пример класса Рестлера:
class Author {
....
function post($request_data=NULL) {
var_dump($request_data);
var_dump($_FILES);
var_dump($_REQUEST);
return $this->dp->insert($this->_validate($request_data));
}
....
}
Я пытаюсь отправить файл и некоторые данные в службу Restler с помощью простой формы HTML:
<FORM action="http://host/index.php/author" enctype="application/x-www-form-urlencoded" method="post">
Name: <INPUT type="text" name="name" value="dima"><BR>
Email: <INPUT type="text" name="email" value="dima@prot.lt"><BR>
File: <INPUT type="file" name="files"><BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</FORM>
Понятно, что массив $_FILES
будет пустым, но $_REQUEST
и $request_data
будут иметь три переменные:
name = "dima"
, email = "dima@prot.lt"
и file = "selected file name"
.
В следующем тесте я изменил значение enctype формы на multipart / form-data.
<FORM action="http://host/index.php/author" enctype="multipart/form-data" method="post">
Name: <INPUT type="text" name="name" value="dima"><BR>
Email: <INPUT type="text" name="email" value="dima@proto.lt"><BR>
File: <INPUT type="file" name="files"><BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</FORM>
Когда я нажимаю кнопку отправки, в массиве $_REQUEST
я вижу те же три переменные, массив $_FILES
будет заполнен информацией загруженного файла, НО массив $request_data
1023 * будет пусто !!
Кто-нибудь может помочь в этой ситуации? Где я допустил ошибку?