Я пытаюсь получить файлы, выполняющие POST-запрос к действию. Веб-сервис работает нормально, но я не могу получить этот файл «как есть». Cake автоматически преобразует $this->request->data в массив, а это не то, что мне нужно. Мне нужно сохранить этот файл в столбце BLOB в моей базе данных.
Пожалуйста помогите!!!
Заранее спасибо за вашу помощь!!
это мой код контроллера, я на CakePHP 2.1.0:
class TransfersController extends AppController {
public $name = 'Transfers';
public $components = array('RequestHandler');
public function record($rfc = null, $numop = null, $source = null) {
if ($this->request->is('post')) {
if (strlen($rfc) > 0) {
if ($numop > 0) {
$this->loadModel('Client');
$client = $this->Client->findByRfc($rfc);
if (!empty($client)) {
if ($client['Client']['enabled'] == 1) {
// unknown way to get the received file
$this->Transfer->set('client_id', $client['Client']['id']);
$this->Transfer->set('num_operacion', $numop);
$this->Transfer->set('source', $source);
// $this->Transfer->set('xml', $this->request->data);
if ($this->Transfer->save($this->request->data)) {
//$message = 'Ok';
$message = $data;
} else {
$message = 'No se pudo registrar la transmisión';
}
} else {
$message = 'Su cuenta ha sido suspendida. Póngase en contacto con nostros para resolver éste inconveniente.';
}
} else {
$message = 'El RFC ' . $rfc . ' no está registrado';
}
} else {
$message = 'El número de operación no es válido';
}
} else {
$message = 'El RFC no es válido';
}
} else {
$message = 'La petición es inválida';
}
$this->set('message', $message);
}
}