Почему я получаю эту ошибку, когда мой код все еще работает? - PullRequest
0 голосов
/ 10 октября 2018

Я получаю эту ошибку, и я понятия не имею, почему я ее получаю, мой код работает, но все равно наличие ошибки означает, что что-то не так.Не могли бы вы помочь мне?

enter image description here

ЗДЕСЬ:

addDepartment (name:string, location:string):Observable<any> { return this.http.post(this.depCreate,{ "name": name, "location": location}, httpOptions); } 

Код базы данных здесь.Я надеюсь, что это поможет вам исправить это:

function create(){

// query to insert record
$query = "INSERT INTO
            " . $this->table_name . "
  JSON.stringify({ "name": name, "location": location})";

          //  echo $query;

// prepare query

$stmt = $this->conn->prepare($query);
if (!$stmt)
  var_dump($this->conn->errorInfo());

// sanitize
$this->name=htmlspecialchars(strip_tags($this->name));
$this->location=htmlspecialchars(strip_tags($this->location));



// bind values
$stmt->bindParam(":name", $this->name);
$stmt->bindParam(":location", $this->location);


// execute query
if($stmt->execute()){
    return true;
}

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

вам нужно передать тело в виде строки.используйте JSON.stringify({ "name": name, "location": location}) вместо { "name": name, "location": location}.

0 голосов
/ 10 октября 2018

Вы должны отправить действительный JSON.json_encode очень помогает

$message = ['message' => 'department was created.'];
echo json_encode($message);

И наоборот:

Также вы можете использовать $json = json_decode($string, true);

для создания массива из некоторых переменных POST, которые вы отправляете сjavascript.

Некоторый код для вашего скрипта (заменить с: // create the department до конца скрипта)

$message = $department->create()
    ? 'department was created.'
    : 'Unable to create department.';

echo json_encode(['message' => $message]);
...