在服务器端使用 ajax 传送的数据访问 php-脚本

Access with ajax delivered data on a server side php-script

好的,我的问题如下:

我正在尝试访问我在执行 php-脚本时使用 javascript 定义的变量。

// CLIENT SIDE CODE

function deleteEntry() {
      var action = '_includes/deleteEntry.php';
      var method = 'post';
      var data = '2';

    $.ajax({
        url: action,
        type: method,
        data: data

    }).done(function(data){
        $('.main').empty();
        $('.main').append(data);
    });

};

现在我想在 php-脚本 (deleteEntry.php)

中使用我的数据
// SERVER SIDE CODE

<?php
    // VERBINDUNG //
    $connection = mysqli_connect('localhost', 'root', '', 'aufgabenplaner');
    // if (!$connection){
    //     die('Verbindung nicht möglich : ' . mysql_error());
    // }

    // SQL-ABFRAGE //
    $query = "DELETE FROM aufgaben WHERE job_nr =" ."DATA GOES HERE!!!";
    $result = mysqli_query( $connection, $query );

    include 'main-content.php';
?>

上面说的"DATA GOES HERE!!!"我想使用数据值,但我不知道如何使用。

通常你传递一个 JSON 对象作为你的 POST

$.ajax({
    url: action,
    type: 'post', //put your declaration here for readability
    data: {'var' : 2}
})

然后您将在 PHP 中使用 $_POST['var'] 来获取值

您必须准备 data 对象,使其具有键值对。这样您就可以访问 PHP 脚本中的数据。 JavaScript:

function deleteEntry() {
      var action = '_includes/deleteEntry.php';
      var method = 'post';
      var data =  { number: '2'};

    $.ajax({
        url: action,
        type: method,
        data: data

    }).done(function(data){
        $('.main').empty();
        $('.main').append(data);
    });

};

PHP:

// SERVER SIDE CODE

<?php
    // VERBINDUNG //
    $connection = mysqli_connect('localhost', 'root', '', 'aufgabenplaner');
    // if (!$connection){
    //     die('Verbindung nicht möglich : ' . mysql_error());
    // }

    // SQL-ABFRAGE //
    $number = (int)$_POST['number']; // make sure it's no malicious input from user
    $query = "DELETE FROM `aufgaben` WHERE `job_nr` = '" . $number . "'";
    $result = mysqli_query( $connection, $query );

    include 'main-content.php';
?>