Php $.ajax POST的响应包括我以前做过的sql插入,我不';我不知道为什么

Php $.ajax POST的响应包括我以前做过的sql插入,我不';我不知道为什么,php,jquery,ajax,Php,Jquery,Ajax,我的网页使用jquery代码调用一个php文件,该文件在mysql BD中插入一行。问题是我应该从服务器获取JSON格式的数据,但我收到了预期的数据,但我也收到了php文件中发送到mysql DB的sql指令。为什么? jquery代码: $("#botoPreReserva").click(function(){ var dataArribada=$("#dataArribada").val(); var dataSortida=$("#data

我的网页使用jquery代码调用一个php文件,该文件在mysql BD中插入一行。问题是我应该从服务器获取JSON格式的数据,但我收到了预期的数据,但我也收到了php文件中发送到mysql DB的sql指令。为什么?

jquery代码:

$("#botoPreReserva").click(function(){
            var dataArribada=$("#dataArribada").val();
            var dataSortida=$("#dataSortida").val();
            var firstname=$("#firstname").val();
            var lastname=$("#lastname").val();
            var email=$("#email").val();
            var message=$("#message").val();
            var req=$.ajax({
              method:"POST",
              url:"comprovardates.php",
              data:{arribada:dataArribada,
                    sortida:dataSortida,
                    firstname:firstname,
                    lastname:lastname,
                    email:email,
                    message:message},
              dataType:"json"


            });

           req.done(function(result){

                if(result.error != "0"){
                    $("#resultatPreReserva").text(result.errorTexte);
                }
                else{
                  $("#resultatPreReserva").text(" ");
                  //posar el calendari a l'inici de la preReserva
                  $.post("nomMes.php", {mesN:result.mesPre },
                    function(result2){
                    $("#mes").text(result2);
                  });
                  $("#any").text(result.anyPre);
                  $("#taulaCalendari").load("calendari.php",{actualmonth:result.mesPre, actualyear:result.anyPre});

                  alert(result.result);
                }

            });
            req.fail(function(jqXHR, textStatus){
              alert(textStatus);


            });
这是一个comprovardades.php简化版:

$calendari= new Calendar(SERVERNAME,DBNAME,USERNAME,PASSWORD);

//conectam a la base de dades
$calendari->connect();

// onsultam reserves d'agost del 2016
$min= new DateTime("2016-11-01");$max= new DateTime("2016-11-31"); $tipus="preReserva"; 
$event = new Event(); $event->setEntrada($min); $event->setSortida($max); $event->setTipus($tipus);

$eventList=$calendari->insertEvent($event);

echo   json_encode(array("error"=>"0","errorTexte"=>"prova","result"=>"result","mesPre"=>"01","anyPre"=>"2016"));
其中connect():

其中insertEvent():

我对jquery的回复是这样的

插入储量(entrada、sortida、tipus、summary)值('2016-11-01'、'2016-12-01'、'preReserva'、' ){“error”:“0”,“errorTexte”:“prova”,“result”:“result”,“mesPre”:“01”,“anyPre”:“201>6”}

我发现解决这个问题的唯一方法是在php文件中的echo之前使用ob_clean,但我认为这是一种更好的方法。我是个笨蛋,不知道我是否漏掉了什么

谢谢,

where insertEvent():

注释掉查询的echo语句

function insertEvent(Event $event){

$sql="INSERT INTO reserves(entrada,sortida,tipus,summary)"
        . " VALUES ('".$event->getEntrada()->format('Y-m-d')."','".$event->getSortida()->format('Y-m-d')."','".$event->getTipus()."','".$event->getSummary()."')";
//echo $sql; // commented this echo 
try{
  $this->conn->exec($sql);
  error_log("SQL:".$sql);
}
catch(PDOException $e)
{
  error_log("INSERT failed " . $e->getMessage());
}

}
}

答案少于30个字符:(您有
echo$sql
注释或删除echo$sql;并在响应中返回一些适当的结果。感谢您的回答。我一直在寻找一个超级复杂的答案,但错过了此echo.:/
function insertEvent(Event $event){

$sql="INSERT INTO reserves(entrada,sortida,tipus,summary)"
        . " VALUES ('".$event->getEntrada()->format('Y-m-d')."','".$event->getSortida()->format('Y-m-d')."','".$event->getTipus()."','".$event->getSummary()."')";
echo $sql;
try{
  $this->conn->exec($sql);
  error_log("SQL:".$sql);
}
catch(PDOException $e)
{
  error_log("INSERT failed " . $e->getMessage());
}

}
}
function insertEvent(Event $event){

$sql="INSERT INTO reserves(entrada,sortida,tipus,summary)"
        . " VALUES ('".$event->getEntrada()->format('Y-m-d')."','".$event->getSortida()->format('Y-m-d')."','".$event->getTipus()."','".$event->getSummary()."')";
//echo $sql; // commented this echo 
try{
  $this->conn->exec($sql);
  error_log("SQL:".$sql);
}
catch(PDOException $e)
{
  error_log("INSERT failed " . $e->getMessage());
}

}
}