Ошибка POST {"__zone_symbol__currentTask": {"type": "microTask", "state": "notScheduled", "source": "Promise.then" - PullRequest
0 голосов
/ 09 апреля 2020

Привет, я пытаюсь сделать запрос POST через приложение ioni c 3 с собственным плагином HTTP. С GET это не проблема, и данные хранятся в mysql, и я могу получить их оттуда без проблем. Но с POST это не работает ...

let postData = new FormData()
  postData.append('s_id',this.s_id)
  postData.append('klasse',this.klasse.id)
  postData.append('stunde',this.stunde.id)
  postData.append('uebungen',JSON.stringify(this.uebungen))
  postData.append('wo_id',woid)

const options = {
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
    }
};

this.http.post(
      'URL.php/', 
      postData,
      options
     )
     .then(response => {
        console.log("Response: "+response);
        try {
          response.data = JSON.parse(response.data);
        } catch(e) {
          console.error('JSON parsing error');
        }
     })
     .catch(response => {
       console.log("Response: "+response)
      }
     });

Но ответ просто:

{"__zone_symbol__currentTask":{"type":"microTask","state":"notScheduled","source":"Promise.then","zone":"angular","cancelFn":null,"runCount":0}}

Я думаю, что ошибка должна быть в моем php -сценарии, но с GET нет проблем:

 <?php
$pdo = new PDO('mysql:host=localhost;dbname=*', '*', '*');

$neuer_user = array();
/*$neuer_user['s_id'] = $_GET['s_id'];
$neuer_user['klasse'] = $_GET['klasse'];
$neuer_user['stunde'] = $_GET['stunde'];
$neuer_user['user'] = $_GET['wow_id'];
$neuer_user['uebungen'] = $_GET['uebungen'];*/
//GET working

$neuer_user['s_id'] = $_POST['s_id'];
$neuer_user['klasse'] = $_POST['klasse'];
$neuer_user['stunde'] = $_POST['stunde'];
$neuer_user['user'] = $_POST['wow_id'];
$neuer_user['uebungen'] = $_POST['uebungen'];

//echo  $neuer_user['user'];

try {
    $statement = $pdo->prepare("INSERT INTO wot (s_id,klasse,stunde,user,uebungen) VALUES (:s_id, :klasse, :stunde, :user, :uebungen)");

    if (!$statement) {
    echo "\nPDO::errorInfo():\n";
    print_r($pdo->errorInfo());
    }

    $statement->execute($neuer_user);
}
catch(Exception $e) {
    echo 'Exception -> ';
    var_dump($e->getMessage());
}





$statement = $pdo->prepare("SELECT * FROM wot WHERE user = ?");
$statement->execute($neuer_user['user']);   
while($row = $statement->fetch()) {
   echo $row['user']." ".$row['s_id']."<br />";
   echo "Klasse: ".$row['klasse']."<br /><br />";
}

?>

Может кто-нибудь помочь мне, пожалуйста, с этим? Спасибо!

...