单击按钮,使用AJAX删除Tweet

时间:2018-05-30 15:06:31

标签: php ajax twitter

我试图在按钮点击时删除带有AJAX的推文。我正在使用abraham's Twitter API。当我点击按钮时,我想删除推文和相应的元素。 JavaScript代码:

    $('.delete').click(function(){
        var el = this;
        var id = this.id;
        var splitid = id.split("_");

        // Delete id
        var deleteid = splitid[1];

        // AJAX Request
        $.ajax({
        url: 'deletetweet.php',
        type: 'POST',
        data: { id:deleteid },
        success: function(response){
            $(el).closest('.col-md-9').remove();
        }
        });
    });

使用AJAX,我将数据发送到同一目录中的“deletetweet.php”文件。 PHP文件:

require "api/config.php";
$id = $_POST['id'];
echo $id;
// Delete tweet
function deleteTweet($id) {
    $delete = $connection->post('statuses/destroy/'.$id, array());
    return $delete;
}

deleteTweet($id);

最后,如果您需要“config.php”文件:

require "autoload.php";

use Abraham\TwitterOAuth\TwitterOAuth;

$c_key = 'C_KEY';
$c_secret = 'C_SECRET';
$a_token = 'A_TOKEN';
$a_token_secret = 'A_TOKEN_SECRET';

$connection = new TwitterOAuth($c_key, $c_secret, $a_token, $a_token_secret);
$user = $connection->get("account/verify_credentials");

现在,删除元素部分工作正常。但是,删除推文不起作用。我实际上不知道我的“deleteTweet”功能是否正常工作,我不知道如何检查它是否正在运行。

编辑:通过更多的挖掘和调试,我发现了错误。问题在于全球变量“$ connection”。当我在“deletetweet.php”文件中需要“config”文件时,我还应该将“$ connection”变量声明为全局变量。之后,它运作良好。

1 个答案:

答案 0 :(得分:1)

我不知道api但是你忘记了ID之前和之后忘记了吗?

function deleteTweet($id) {
    $delete = $connection->post('statuses/destroy'.$id, array());
    return $delete;
}

我猜网址是statuses / destory / id