public function POST() { // throw new RESTMethodNotImplementedException ('Pesquisa', 'POST'); $sk = new SecureKeyAuth(); $sk->checkAuth(); $params = $this->getPostParams(); $fields = implode(',', array_keys($params)); $keyparams = implode(',', array_map(function ($value) { return ':' . $value; }, array_keys($params))); $db = Database::getDatabase(); try { $st = $db->prepare("INSERT INTO pesquisa ({$fields}) VALUES ({$keyparams})"); foreach ($params as $field => $value) { $tipo = is_int($value) ? PDO::PARAM_INT : PDO::PARAM_STR; $st->bindValue(':' . $field, $value, $tipo); } if ($st->execute()) { $this->setResult(array('status' => 'OK')); } else { //$this->setResult($db->errorInfo()); $this->setResult(array('status' => 'ERROR', 'fields' => $fields, 'keyparams' => $keyparams, 'sqlerrorcode' => $db->errorCode())); } } catch (PDOException $ex) { throw new RESTObjectException('Database insert fail'); } }
public function POST() { $sk = new SecureKeyAuth(); $sk->checkAuth(); $params = $this->getPostParams(); $db = Database::getDatabase(); $st = $db->prepare('INSERT INTO ' . 'promocao (idartista, nome, celular, texto)' . 'VALUES (:idartista, :nome, :celular, :texto)'); $st->bindValue(':idartista', $params['idartista'], PDO::PARAM_INT); $st->bindValue(':nome', $params['nome'], PDO::PARAM_STR); $st->bindValue(':celular', $params['celular'], PDO::PARAM_STR); $st->bindValue(':texto', $params['texto'], PDO::PARAM_STR); if ($st->execute()) { $this->setResult(array('status' => 'OK', 'message' => 'Mensagem cadastrada com sucesso.')); } else { $this->setResult($db->errorInfo()); } }
public function POST() { throw new RESTMethodNotImplementedException('Device', 'POST'); $fim = Application::getConf('votacao')->fim; $agora = time; if ($agora > $fim) { throw new RESTObjectException('Votações encerradas', $agora); } $sk = new SecureKeyAuth(); $sd = new SecureDeviceHash(); $sk->checkAuth(); $sd->checkAuth(); $params = $this->getPostParams(); $db = Database::getDatabase(); if ($db->select('device_votou_momo', "iddevice = {$params['iddevice']}")->fetch()) { throw new RESTObjectException('Você já votou para momo'); } try { $db->beginTransaction(); $flag = false; //inserir registro votado $flag = $db->exec("INSERT INTO device_votou_momo (iddevice) VALUES ({$params['iddevice']})") ? TRUE : FALSE; //inserir registro if ($flag) { $flag = $db->exec("INSERT INTO votos_momo (idmomo) VALUES ({$params['idmomo']})") ? TRUE : FALSE; } if ($flag) { $db->commit(); } else { $db->rollBack(); throw new RESTObjectException('Database insert fail'); } $this->GET(); } catch (PDOException $ex) { $db->rollBack(); throw new RESTObjectException('Database insert fail'); } }
public function POST() { throw new RESTMethodNotImplementedException('Device', 'POST'); $sk = new SecureKeyAuth(); $sk->checkAuth(); //Verificando secure key $result = array(); $params = $this->getPostParams(); if ($params === FALSE) { throw new RESTMethodNotImplementedException('Device', 'POST'); } $flag_exists = false; $db = Database::getDatabase(); if (trim(strtolower($params['platform'])) == 'android') { //Verificando serial $st_result = $db->query("SELECT * FROM device WHERE serial = '{$params['serial']}'")->fetch(); $flag_exists = $st_result !== false; } else { $this->setResult(array('status' => 'ERROR', 'message' => 'Only Android devices are permited')); return; } if ($flag_exists) { $this->setResult(array('status' => 'ERROR', 'message' => 'Device is registered on database')); return; } $st = $db->prepare('INSERT INTO ' . 'device (uuid, serial, version, platform, model, hash_key)' . 'VALUES (:uuid, :serial, :version, :platform, :model, :hash_key)'); $params['hash_key'] = md5($params['uuid'] . $params['model'] . $params['serial']); foreach ($params as $field => $value) { $result[$field] = $value; $st->bindValue(':' . $field, $value); } if ($st->execute()) { $this->setResult(array('status' => 'OK', 'iddevice' => $db->lastInsertId(), 'hash_key' => $params['hash_key'])); } else { $this->setResult($db->errorInfo()); } }