Método POST do Slim não grava no MySQL
Olá, pessoal
Meu método POST não grava no banco de dados. Reparei que se eu inserir os dados diretamente no sql ele grava. O problema é quando eu coloco :canvas_box_id,:canvas_project_id,:text. Essas variáveis eu tenho que pegar do JSON que está sendo enviado pelo jquery e não pela uri.
var dados = {canvas_box_id: canvas_id , canvas_project_id:canvas_id , text:depois} ;
$.ajax({
type: "POST",
url: dominio+"projects/"+project_id+"/canvas_projects/"+canvas_id+"/canvas_tickets.json?key="+key ,
contentType: "application/json",
dataType: "json",
data: dados
});
$app->post('/projects/:project_id/canvas_projects/:canvas_project_id/canvas_tickets.json','postTicket');
$app->run();
function postTicket(){
$request = \Slim\Slim::getInstance()->request();
$wine = json_decode($request->getBody());
$sql = "INSERT INTO `canvas_ticket` (`canvas_box_id`,`canvas_project_id`,`text`) values (:canvas_box_id,:canvas_project_id,:text)";
try {
$db = getConn();
$stmt = $db->prepare($sql);
$stmt->bindParam("canvas_box_id", $wine->canvas_box_id);
$stmt->bindParam("canvas_project_id", $wine->canvas_project_id);
$stmt->bindParam("text", $wine->text);
$stmt->execute();
# $wine->id = $db->lastInsertId();
$db = null;
# echo json_encode($wine);
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
Eu adicionei a seguinte linha no ajax
error: function(jqXHR, textStatus, errorThrown){
alert('addWine error: ' + textStatus);
}
e está aparecendo está mensagem "addWine error: parseerror".
O que isto quer dizer?
Eu instalei este plugin para testar e mesmo assim não está gravando. Por quê?
/applications/core/interface/imageproxy/imageproxy.php?img=http://odysseus-lens.ddns.net/erropost.png&key=2b7e8fbc09c52af4daeff9a0a4fff1cf74f5540877a1057ba88a9ba3c8fb8626" alt="erropost.png" />
Discussão (1)
Carregando comentários...